Difference between revisions of "Flashpoint Proxy"

From Flashpoint Database
Jump to: navigation, search
(Created page with "[https://github.com/FlashpointProject/FlashpointProxy Flashpoint Proxy] is a library that can be loaded into applications to change their HTTP proxy settings, without changing...")
 
 
(2 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
The Flashpoint Proxy library is written such that as soon as it's loaded, it changes the proxy settings for the process it's loaded in. So all that is needed is to patch the executable or DLL's import table to force it to load the Flashpoint Proxy library; no code modification is required. The instructions for doing so are below.
 
The Flashpoint Proxy library is written such that as soon as it's loaded, it changes the proxy settings for the process it's loaded in. So all that is needed is to patch the executable or DLL's import table to force it to load the Flashpoint Proxy library; no code modification is required. The instructions for doing so are below.
  
# [https://forum.xda-developers.com/showthread.php?p=2508061 Download the delcert tool] and drag the executable you want to modify (e.g. flashplayer.exe) onto it.  
+
# [https://forum.xda-developers.com/showthread.php?p=2508061 Download the delcert tool] and drag the executable or DLL you want to modify (e.g. flashplayer.exe) onto it.  
 
#* This will remove its digital signature, which is helpful because patching a file will invalidate its digital signature. We don't want to leave an invalid digital signature on a file; security software tends to view this with suspicion.
 
#* This will remove its digital signature, which is helpful because patching a file will invalidate its digital signature. We don't want to leave an invalid digital signature on a file; security software tends to view this with suspicion.
 
# [https://ntcore.com/?page_id=388 Download and install CFF Explorer].
 
# [https://ntcore.com/?page_id=388 Download and install CFF Explorer].
Line 10: Line 10:
 
# Select <code>DllMain</code> and choose "Import By Name."  
 
# Select <code>DllMain</code> and choose "Import By Name."  
 
# <code>DllMain</code> will show up in the right-side column. Click "Rebuild Import Table" (leaving any other settings default).  
 
# <code>DllMain</code> will show up in the right-side column. Click "Rebuild Import Table" (leaving any other settings default).  
# You should see the message "Import table rebuilt successfully." Click File -> Save to finish patching.
+
# You should see the message "Import table rebuilt successfully." Click File > Save to finish patching.
 +
 
 +
'''Note:''' A rare problem can occur when patching an application, which will cause it to display a runtime error and fail to run properly. If this happens, it means that CFF Explorer changed certain permissions that it should not have changed; you need to manually change them back. To do this, first open both the unpatched and patched file in CFF Explorer. Select the Section Headers option in each CFF Explorer window. For each value in the Characteristics column that differs between the two files, copy the value from the ''unpatched'' file to the ''patched'' file. But skip the column's bottom value! That permission value is the one that CFF Explorer should have changed; don't change that one back.

Latest revision as of 07:18, 25 October 2021

Flashpoint Proxy is a library that can be loaded into applications to change their HTTP proxy settings, without changing the proxy settings of the underlying system. It is compatible with any application that uses the WinINet library. It supports the HTTP and FTP protocols, and blocks the HTTPS protocol.

The Flashpoint Proxy library is written such that as soon as it's loaded, it changes the proxy settings for the process it's loaded in. So all that is needed is to patch the executable or DLL's import table to force it to load the Flashpoint Proxy library; no code modification is required. The instructions for doing so are below.

  1. Download the delcert tool and drag the executable or DLL you want to modify (e.g. flashplayer.exe) onto it.
    • This will remove its digital signature, which is helpful because patching a file will invalidate its digital signature. We don't want to leave an invalid digital signature on a file; security software tends to view this with suspicion.
  2. Download and install CFF Explorer.
  3. Right-click flashplayer.exe and click "Open with CFF Explorer.."
  4. Go to the Import Adder screen. Click "Add" and select the FlashpointProxy binary file.
  5. Select DllMain and choose "Import By Name."
  6. DllMain will show up in the right-side column. Click "Rebuild Import Table" (leaving any other settings default).
  7. You should see the message "Import table rebuilt successfully." Click File > Save to finish patching.

Note: A rare problem can occur when patching an application, which will cause it to display a runtime error and fail to run properly. If this happens, it means that CFF Explorer changed certain permissions that it should not have changed; you need to manually change them back. To do this, first open both the unpatched and patched file in CFF Explorer. Select the Section Headers option in each CFF Explorer window. For each value in the Characteristics column that differs between the two files, copy the value from the unpatched file to the patched file. But skip the column's bottom value! That permission value is the one that CFF Explorer should have changed; don't change that one back.