mvc pdf viewer : Convert pdf document to text application software tool html winforms asp.net online AccuvantBrowserSecCompar_FINAL6-part958

Browser Security Comparison – A Quantitative Approach 
Page| 55 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Windows Clipboard 
The Windows clipboard enables different applications to share messages and data [Microsoft_Clip]. Not 
only could a compromised application read potentially sensitive information from the clipboard, the 
attacker could also use flaws in the clipboard to gain further system access (i.e. sandbox escape) 
[Clip_Exploit]. During our tests, we attempted to GET and SET information to the clipboard. 
Action 
Permission Granted 
GetClipboardData(CF_TEXT)
BLOCKED 
SetClipboardData(CF_TEXT)
BLOCKED 
Figure 56. Internet Explorer clipboard access 
Windows Desktop 
The Windows desktop not only provides a display surface for user interaction, but also contains objects 
such as windows, menus and hooks (it is also a securable object). Windows messages are limited to 
communicating with other processes that reside on the same desktop; inter-desktop process 
communication is not operational [Microsoft_Desktop]. The ability to create, switch and open other 
desktops with varying permissions may also lead to privilege escalation scenarios [CVE-2009-1123]. 
Action 
Permission Granted 
CreateDesktop()
GRANTED 
OpenWindowsStation(“winsta0”)
GRANTED 
SetProcessWindowStation(“winsta0”) 
GRANTED 
OpenDesktop(“Default”)
GRANTED 
Figure 57. Internet Explorer desktop/WindowStation access 
System Parameters 
It should be obvious that an attacker could use the system wide parameters to his advantage. These 
parameters can control screen savers, menus and many other options [Microsoft_SysParam]. By limiting 
the ability to set these parameters, the sandbox can ensure that no underhandedness can be achieved 
by someone attempting to escape the sandboxed environment.  
Action 
Permission Granted 
SystemParametersInfo(SPI_GETMOUSE) [GET]
GRANTED 
SystemParametersInfo(SPI_SETMOUSE) [SET]
BLOCKED 
Figure 58. Internet Explorer SystemParametersInfo() 
Note: Only a single system parameter was checked for brevity’s sake. 
Convert pdf document to text - Convert PDF to txt files in C#.net, ASP.NET MVC, WinForms, WPF application
C# PDF to Text (TXT) Converting Library to Convert PDF to Text
convert pdf to text format; extract text from pdf
Convert pdf document to text - VB.NET PDF Convert to Text SDK: Convert PDF to txt files in vb.net, ASP.NET MVC, WinForms, WPF application
VB.NET Guide and Sample Codes to Convert PDF to Text in .NET Project
convert scanned pdf to word text; converting pdf to plain text
Browser Security Comparison – A Quantitative Approach 
Page| 56 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Windows Message Broadcasts 
By sending a Windows Message with the ‘HWND_BROADCAST’ option set, an application effectively 
sends the same message to every top-level window. Each of these windows could interpret the 
broadcast message differently; due to expecting a varying number of parameters [MSDN_Broad]. This 
could cause many operating system instability and exploitation scenarios. We sent an example 
broadcast message to determine if it was permitted from within the sandbox. A great example of 
exploiting the Windows messaging system for authoritative gain would be a shatter attack 
[Wiki_Shatter]. 
Action 
Permission Granted 
SendMessage(HWND_BROADCAST, WM_TIMER)
GRANTED 
Figure 59. Internet Explorer send broadcast message 
Windows Hooks 
Windows hooks are a procedure used to monitor certain types of system events on the same desktop as 
the calling thread [Microsoft_Hooks]. These same hooks historically have been used by malware to do 
such things as monitor keyboard input and other nefarious tasks. We checked the ability to set system 
hooks. 
Action 
Permission Granted 
SetWindowsHookEx(WH_KEYBOARD)
GRANTED 
Figure 60. Internet Explorer set Windows hooks 
C# PDF Text Extract Library: extract text content from PDF file in
C#.NET PDF text extracting library package, you can easily extract all or partial text content from target PDF document file, edit selected text content, and
conversion of pdf image to text; convert pdf to openoffice text
C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
easy for C# developers to convert and transform style that are included in target PDF document file original formatting and interrelation of text and graphical
convert pdf image to text online; convert pdf to txt
Browser Security Comparison – A Quantitative Approach 
Page| 57 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Named Pipes 
Named pipes are used for one-way or two-way communications within the Windows operating system 
[Microsoft_Pipes]. While the ability to communicate between client and server is an integral part of 
inter process communication, unbridled communications can be used to bypass sandbox protection 
mechanisms. For example, imagine an attacker has the ability to send data to a named pipe, which has a 
privilege and authorization level greater than the process that is sending data. We attempted to 
enumerate all the named pipes for a system for permissions testing. If that were not possible, we would 
iterate through a list of ‘well-known’ pipes for the Windows 7 (32-bit) operating system in an attempt to 
validate permissions. For a complete listing, please see ‘ie9_sandbox_results.txt’ in the attachment. 
Named Pipe 
PIPE_ACCESS_INBOUND PIPE_ACCESS_OUTBOUND 
\\.\pipe\lsass 
GRANTED 
INDETERMINATE  
[Resource not Available] 
\\.\pipe\ntsvcs 
GRANTED 
BLOCKED 
\\.\pipe\scerpc 
GRANTED 
BLOCKED 
\\.\pipe\protected_storage 
GRANTED 
GRANTED 
\\.\pipe\plugplay 
GRANTED 
BLOCKED 
\\.\pipe\epmapper 
GRANTED 
BLOCKED 
\\.\pipe\eventlog 
GRANTED 
BLOCKED 
\\.\pipe\atsvc 
GRANTED 
BLOCKED 
\\.\pipe\wkssvc 
GRANTED 
GRANTED 
\\.\pipe\keysvc 
GRANTED 
BLOCKED 
\\.\pipe\trkwks 
GRANTED 
BLOCKED 
\\.\pipe\srvsvc 
GRANTED 
GRANTED 
Figure 61. Internet Explorer named pipe access 
Summary 
Internet Explorer permits the low privileged browser processes limited interaction with the operating 
system by permitting read-only accessibility to most resources. While the ability to prevent attacker 
persistence through limiting write access is notable, the attacker still has the ability to read and export 
information to the outside world via network sockets. In addition, since there is no alternate desktop 
and desktops can be created; there is an ability to communicate with other non-sandboxed window 
objects. Named pipes are also accessible for reading and writing, which could result in additional attack 
surfaces used for privilege escalation (i.e. escalating from low integrity to a higher integrity). Overall, 
Internet Explorer does a satisfactory job of preventing malware persistence, but lacks the ability to lock 
down browser processes that may be exploited to gain further privilege level by using available system 
resources. 
VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.
Embed zoom setting (fit page, fit width). Free library for .NET framework. Why do we need to convert PDF document to HTML webpage using VB.NET programming code?
c# extract text from pdf; convert pdf to searchable text
C# PDF Converter Library SDK to convert PDF to other file formats
need to get text content from PDF file, this C# PDF to text conversion code If you want to transform and convert PDF document to Jpeg image file format, this
best pdf to text converter for; convert pdf to searchable text online
Browser Security Comparison – A Quantitative Approach 
Page| 58 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Mozilla Firefox 
ASLR Results 
Each binary installed or loaded during browser startup was investigated to determine its ASLR 
compatibility. The pefile python library was used to check the OPTIONAL_HEADER.DllCharacteristics 
attribute to determine if a given module’s address space would be randomized by the loader. 
All the binaries that were currently loaded and being used by the browser were ASLR compatible, 
although it is difficult to predict all modules that could be loaded. For a full listing, please see the Mozilla 
Firefox ASLR results in Appendix A
Note: We are aware that this list may be missing binaries and will attempt to update it if new modules 
are discovered. Also, note that this omits any third party/plug-in modules. 
DEP Results 
As mentioned previously, Data Execution Prevention (DEP) prevents attackers from executing their data 
as code. By limiting execution rights to certain address spaces, DEP reduces the attack surface. The 
default DEP policy for Windows 7 (32-bit) is OptIn [Microsoft_DEP]; meaning that the module will either 
have to be compiled with the /NXCOMPAT flag set or DEP will need to be enabled via 
NTSetInformationProcess()  [Uninformed_DEP] (Windows XP & Windows 2003) or 
SetProcessDEPPolicy() [Microsoft_SPDEP] (Windows Vista and later). 
NXCOMPAT: Bit 0x100 Set in DllCharactieristics. 
Figure 62. Firefox DEP enabled 
VB.NET PDF Text Extract Library: extract text content from PDF
With this advanced PDF Add-On, developers are able to extract target text content from source PDF document and save extracted text to other file formats
convert pdf to plain text online; convert scanned pdf to text online
VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
Convert PDF document to DOC and DOCX formats in Visual Basic .NET project. using RasterEdge.XDoc.PDF; Convert PDF to Word Document in VB.NET Demo Code.
convert pdf to word searchable text; convert pdf to openoffice text document
Browser Security Comparison – A Quantitative Approach 
Page| 59 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Process Examination: Process Explorer shows DEP enabled for the browser. 
Figure 63. Firefox permanent DEP enabled 
GS Results (Stack Cookies) 
A test was run to determine if a module was compiled with the /GS compiler option [Microsoft_GS] for 
each item used by Mozilla Firefox. Although flawed*, this simple test attempted to see if a stack cookie 
named object was referenced within a binary. While having stack cookies doesn’t completely prevent 
exploitation, it does make writing an exploit more difficult. 
All modules tested that were used by Mozilla Firefox are compiled with stack cookies. 
For a full listing of the stack cookie results for Mozilla Firefox, please reference the Mozilla Firefox GS 
results section in Appendix A
*Note: A module may not have the need for a stack cookie, which is determined by stack variable usage 
[Microsoft_GS]. 
JavaScript JIT Hardening 
Firefox does not implement any JIT hardening techniques. 
VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.
Convert PDF to Text. Convert PDF to JPEG. Convert PDF to Png, Gif, Bitmap Images. File & Page Process. File: Merge, Append PDF Files. File: Split PDF Document
converting pdf to searchable text format; c# read text from pdf
VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.
VB.NET PDF - Convert PDF to TIFF Using VB in VB.NET. Free VB.NET Guide to Render and Convert PDF Document to TIFF in Visual Basic Class.
convert pdf to text c#; convert .pdf to text
Browser Security Comparison – A Quantitative Approach 
Page| 60 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Sandbox Results 
At the time of this writing, Mozilla Firefox does not implement any type of formal sandbox technology. It 
relies on the Windows integrity level given to the application on start-up (by default, this is medium). 
The following results are shown, not as sandbox results, but the inverse, the browser’s capabilities when 
no sandbox or additional integrity restrictions are implemented. 
File System 
Certain directories and files were accessed attempting to show the browsers file system access 
capabilities. 
Note: Permissions may overlap due to generic and specific permission checks. This is done to give an 
overview accompanied by precise security permissions. 
Permission 
%SystemDrive% %SystemRoot% 
%ProgramFiles% 
%SystemRoot%\System32 
%UserProfile
%Temp% 
%AppData% 
ZERO
GRANTED 
GRANTED 
GRANTED 
GENERIC_READ
GRANTED 
GRANTED 
GRANTED 
GENERIC_WRITE
GRANTED 
BLOCKED 
GRANTED 
FILE_ADD_FILE
GRANTED 
BLOCKED 
GRANTED 
FILE_ADD_SUBDIRECTORY
GRANTED 
BLOCKED 
GRANTED 
FILE_APPEND_DATA
GRANTED 
BLOCKED 
GRANTED 
FILE_CREATE_PIPE_INSTAN
CE
GRANTED 
BLOCKED 
GRANTED 
FILE_DELETE_CHILD
GRANTED 
BLOCKED 
GRANTED 
FILE_LIST_DIRECTORY
GRANTED 
GRANTED 
GRANTED 
FILE_READ_ATTRIBUTES
GRANTED 
GRANTED 
GRANTED 
FILE_READ_DATA
GRANTED 
GRANTED 
GRANTED 
FILE_READ_EA
GRANTED 
GRANTED 
GRANTED 
FILE_TRAVERSE
GRANTED 
GRANTED 
GRANTED 
FILE_WRITE_ATTRIBUTES
GRANTED 
BLOCKED 
GRANTED 
FILE_WRITE_DATA
GRANTED 
BLOCKED 
GRANTED 
FILE_WRITE_EA 
GRANTED 
BLOCKED 
GRANTED 
WRITE_DAC 
GRANTED 
BLOCKED 
GRANTED 
Figure 64. Firefox directory permissions I 
Browser Security Comparison – A Quantitative Approach 
Page| 61 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Permission 
%AllUsersProfile% 
ZERO
GRANTED 
GENERIC_READ
GRANTED 
GENERIC_WRITE
GRANTED 
FILE_ADD_FILE
GRANTED 
FILE_ADD_SUBDIRECTORY
GRANTED 
FILE_APPEND_DATA
GRANTED 
FILE_CREATE_PIPE_INSTANCE
GRANTED 
FILE_DELETE_CHILD
BLOCKED 
FILE_LIST_DIRECTORY
GRANTED 
FILE_READ_ATTRIBUTES
GRANTED 
FILE_READ_DATA
GRANTED 
FILE_READ_EA
GRANTED 
FILE_TRAVERSE
GRANTED 
FILE_WRITE_ATTRIBUTES
GRANTED 
FILE_WRITE_DATA
GRANTED 
FILE_WRITE_EA 
GRANTED 
WRITE_DAC 
BLOCKED 
Figure 65. Firefox directory permissions II 
Files 
Permission 
%SystemRoot%\explorer.exe 
%SystemRoot%\Cursors\arrow_i.cur 
ZERO
GRANTED 
GENERIC_READ
GRANTED 
GENERIC_WRITE
BLOCKED 
GENERIC_EXECUTE 
GRANTED 
FILE_EXECUTE
GRANTED 
FILE_READ_ATTRIBUTES
GRANTED 
STANDARD_RIGHTS_EXECUTE 
GRANTED 
SYNCHRONIZE
GRANTED 
FILE_READ_DATA
GRANTED 
FILE_READ_EA
GRANTED 
STANDARD_RIGHTS_READ
GRANTED 
FILE_APPEND_DATA
BLOCKED 
FILE_WRITE_ATTRIBUTES 
BLOCKED 
FILE_WRITE_DATA 
BLOCKED 
FILE_WRITE_EA 
BLOCKED 
STANDARD_RIGHTS_WRITE 
GRANTED 
WRITE_DAC 
BLOCKED 
Figure 66. Firefox file permissions 
Browser Security Comparison – A Quantitative Approach 
Page| 62 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Registry 
A select few registry hives and keys were accessed. These hives and keys represent locations that would 
be of interest to malware authors in an attempt to gain persistence. 
Note: The MAXIMUM_ALLOWED permission by a medium integrity process is read-only for all hives and 
keys other than HKEY_CURRENT_USER, which is read/write. 
Hive 
Subkey 
Permission 
Result 
HKEY_LOCAL_MACHINE
NULL
MAXIMUM_ALLOWED
GRANTED 
HKEY_CURRENT_USER
NULL
MAXIMUM_ALLOWED
GRANTED 
HKEY_USERS
NULL
MAXIMUM_ALLOWED
GRANTED 
HKEY_LOCAL_MACHINE 
Software\Microsoft\Windows 
NT\CurrentVersion\WinLogon 
MAXIMUM_ALLOWED
GRANTED 
Figure 67. Firefox registry permissions 
Network Access 
The ability for a browser to access the Internet is vital to its operation, but creating a new socket for 
reading, writing and listening could permit an attacker to communicate read-able information to the 
outside world. The ability to initiate, read, write and listen on Windows sockets are listed below. 
Action 
Result 
WSAStartup
GRANTED 
Send()
GRANTED 
Recv()
GRANTED 
Listen() [port 88]
GRANTED 
Figure 68. Firefox network accessibility 
Resource Monitoring 
Recording keystrokes, registering hotkeys, and attempting to read screen data (i.e. screen captures) are 
widely employed amongst attackers and spyware authors in their attempts to intercept and read user’s 
confidential information. The sandbox test harness has three checks for methods that attempt to 
acquire user information (obviously, there are various other techniques).  
Action 
Result 
GetPixel()
GRANTED 
RegisterHotKey()
GRANTED 
GetAsyncKeyState() 
GRANTED 
Figure 69. Firefox resource monitoring 
Browser Security Comparison – A Quantitative Approach 
Page| 63 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Threads 
Access to other threads running on the system can be used to escalate privileges or trampoline onto 
different parts of the system. The sandbox test harness provides functionality that tests the access 
privileges of every thread currently alive on the system. Since this list can vary greatly, only a list of 
threads and the privileges granted will be supplied. 
Since there is no sandbox in place, all threads that are running with medium integrity will grant full-
access to the Firefox process. Please see ‘firefox5_nosandbox_results.txt’ for a full listing.  
Process:Thread ID 
Permission Granted 
N/A
N/A 
Figure 70. Firefox threads permission granted 
Processes 
Processes, like threads, can be used to escalate privileges or trampoline onto different parts of the 
system. Just like threads, all processes that are medium integrity will be fully accessible by the Firefox 
process. Due to the number of accessible processes, they have been omitted from this paper. Please see 
‘firefox5_nosandbox_results.txt’ for a full listing. 
Process 
Permission Granted 
N/A
N/A 
Figure 71. Firefox processes permission granted 
Process Creation 
An attacker might find it valuable to create a new process, even if that process has the same 
authorization and privilege level as the compromised application. This could permit a plethora of other 
opportunities that could be used for privilege escalation or data leakage. A simple example of calling the 
CreateProcess() API with “C:\Program Files\Internet Explorer\iexplore.exe” was used.  
Executable 
Permission Granted 
C:\Program Files\Internet Explorer\iexplore.exe 
GRANTED 
Figure 72. Firefox CreateProcess() 
Note: We are aware that this is in a system directory and only presents one example, but deemed it 
appropriate for the limitations of this assessment. 
Handles 
Handles are used by the Windows operating system to keep track of content-specific identifiers. This 
permits applications to reference resources by handle, instead of, for example, process ID. Since handles 
are used to access resources, they must also contain security restrictions so that other applications, 
specifically those from the sandbox, may not use them gain privileges. 
For more granular information on handling test cases, please see ‘firefox5_nosandbox_results.txt’ in the 
attachment. 
Browser Security Comparison – A Quantitative Approach 
Page| 64 of 
102 
Version 0.0 Revision Date: 12/6/2011 
Windows Clipboard 
The Windows clipboard enables different applications to share messages and data [Microsoft_Clip]. Not 
only could a compromised application read sensitive information from the clipboard, the attacker could 
also use flaws in the clipboard to gain further system access (i.e. sandbox escape) [Clip_Exploit]. During 
our tests, we attempted to GET and SET information to the clipboard. 
Action 
Permission Granted 
GetClipboardData(CF_TEXT)
GRANTED 
SetClipboardData(CF_TEXT)
GRANTED 
Figure 73. Firefox Clipboard access 
Windows Desktop 
The Windows desktop not only provides a display surface for user interaction, but also contains objects 
such as windows, menus and hooks (it is also a securable object). Windows messages are limited to 
communicating with other processes that reside on the same desktop; inter-desktop process 
communication is not operational [Microsoft_Desktop]. The ability to create, switch and open other 
desktops with varying permissions may also lead to privilege escalation scenarios [CVE-2009-1123].  
Action 
Permission Granted 
CreateDesktop()
GRANTED 
OpenWindowsStation(“winsta0”)
GRANTED 
SetProcessWindowStation(“winsta0”) 
GRANTED 
OpenDesktop(“Default”)
GRANTED 
Figure 74. Firefox Desktop/WindowStation permissions 
System Parameters 
It should be obvious that an attacker could use the system wide parameters to his advantage. These 
parameters can control screen savers, menus and many other options [Microsoft_SysParam]. By limiting 
the ability to set these parameters, the sandbox can ensure that no underhandedness can be achieved 
by someone attempting to escape the sandboxed environment.  
Action 
Permission Granted 
SystemParametersInfo(SPI_GETMOUSE) [GET]
GRANTED 
SystemParametersInfo(SPI_SETMOUSE) [SET]
GRANTED 
Figure 75. Firefox SystemParametersInfo() 
Note: Only a single system parameter was checked for brevity’s sake. 
Documents you may be interested
Documents you may be interested