Post Reply 
Adapting proxo 4.5 to the latest OpenSSL DLLs
Jan. 24, 2015, 07:08 PM
Post: #46
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 24, 2015 04:59 PM)soccerfan Wrote:  For example: should I use it with ProxHTTPSProxyMII
or by itself (with ssl enabled)

Either or both.

Since Proxomitron's SSL still uses a self signed cert, unaltered modern browsers will probably complain when ProxHTTPSProxyMII is not used.
You may be able to disable the browser's cert warnings.

Code:
IE11
Tools>>Advanced>>Warn about certificate address mismatch

Chromium based
use the command line switch --ignore-certificate-errors

(Browsers should allow us to specify which self signed certs may always be used but...)


With Proxomitron's SSL or ProxHTTPSProxyMII's, unaltered browsers may also complain about mixed or insecure content when http is used to add files to https sites.

Code:
IE11
Tools>>Security>>Internet>>Custom level>>Display mixed content

Chromium based
use the command line switch --allow-running-insecure-content

Mozilla
"about:config">>security.mixed_content.block_active_content;false

(Browsers should allow us to specify which http sites may always be used but...)


I'd use an unaltered browser with a direct connection for work, banking, etc.
Add Thank You Quote this message in a reply
Jan. 24, 2015, 07:17 PM
Post: #47
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 24, 2015 12:29 AM)JJoe Wrote:  
(Jan. 23, 2015 10:10 PM)herbalist Wrote:  What hex editor are you people using here? I tried to copy and paste the changes shown using HxD. It won't allow it due to the 3 columns of hyphens in the code. I'm new to hex editing. Is there an easy work-around that I'm missing?

I used HxD and a text editor. Use the text editor to change all "-" to spaces, " ".

Patching exes are coming, tho.


Want to test one for me?
I must be getting senile. Should have thought of that. Thanks. Entering all the changes by hand, then finding the checksum didn't match was annoying to say the least.
I'll try out the new versions. Need to update to the current OpenSSl first. Hopefully I'll get to that this evening.
Add Thank You Quote this message in a reply
Jan. 24, 2015, 08:30 PM
Post: #48
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 24, 2015 07:08 PM)JJoe Wrote:  You may be able to disable the browser's cert warnings.

Code:
IE11
Tools>>Advanced>>Warn about certificate address mismatch

Chromium based
use the command line switch --ignore-certificate-errors

With Proxomitron's SSL or ProxHTTPSProxyMII's, unaltered browsers may also complain about mixed or insecure content when http is used to add files to https sites.

Code:
IE11
Tools>>Security>>Internet>>Custom level>>Display mixed content

Chromium based
use the command line switch --allow-running-insecure-content

Mozilla
"about:config">>security.mixed_content.block_active_content;false

Thanks. I use only portable versions of most browsers (never heard of IE Wink )
I found the following (similar/identical) settings (in case others are using a similar browser):

Slimjet 2.1.6.0 portable (chrome based): "Allow running https/http mixed mode content" (check this box)

Qupzilla 1.8.5 portable (webkit based): preferences|privacy|certificate manager|settings: Ignore all SSL warnings (check this box)

k-meleon 74.0 portable (mozilla besed): (about:config) security.mixed_content.block_active_content (set it to false)

And now, a question:
In Opera 12.17 portable (presto based): (opera:config) I find
Certificate revocation lists for ssl (enable online revocation of certificates for ssl connections)

I assume this should be unchecked

soccerfan
Add Thank You Quote this message in a reply
Jan. 25, 2015, 04:14 AM
Post: #49
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
Minor bug fix - some versions of Opera may fail to connect on the first try with the latest OpenSSL, this is because Opera sends a malformed OCSP nonce extension that OpenSSL rejects (older versions didn't try to parse it unless OCSP stapling is enabled.)

References:
http://forum.nginx.org/read.php?2,245454,245454
https://bugzilla.mozilla.org/show_bug.cgi?id=949918
http://marc.info/?l=openssl-dev&m=138686574323281&w=2
http://marc.info/?l=openssl-dev&m=138504505311150 (this is the change in OpenSSL that caused Opera to break)

With the 1.0.1l OpenSSL DLLs I posted, change ssleay32.dll
(offset, old, new)
Code:
0001B456: 0F 90
0001B457: 84 90
0001B458: E0 90
0001B459: 00 90
0001B45A: 00 90
0001B45B: 00 90
and
Code:
0001B261 0F 90
0001B262 85 90
0001B263 D5 90
0001B264 00 90
0001B265 00 90
0001B266 00 90
You do not have to apply this patch if you are not affected by this bug.

I was actually working on a Proxo patcher for this already...
Add Thank You Quote this message in a reply
Jan. 25, 2015, 03:03 PM
Post: #50
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 04:14 AM)amy Wrote:  Minor bug fix - some versions of Opera may fail to connect on the first try with the latest OpenSSL, this is because Opera sends a malformed OCSP nonce extension that OpenSSL rejects (older versions didn't try to parse it unless OCSP stapling is enabled.)

References:
http://forum.nginx.org/read.php?2,245454,245454
https://bugzilla.mozilla.org/show_bug.cgi?id=949918
http://marc.info/?l=openssl-dev&m=138686574323281&w=2
http://marc.info/?l=openssl-dev&m=138504505311150 (this is the change in OpenSSL that caused Opera to break)

The fourth link refers to opera 12.16. For opera 12.17, the changelog of 04-23-2014
(http://www.opera.com/docs/changelogs/windows/1217/) says:

Fixes and stability enhancements since Opera 12.16
Security fixes
Opera now checks signature before installing the executable file
Updates to OpenSSL versions

Could this update to OpenSSL versions have fixed the opera bug?

soccerfan
Add Thank You Quote this message in a reply
Jan. 25, 2015, 03:25 PM
Post: #51
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 24, 2015 08:30 PM)soccerfan Wrote:  And now, a question:
In Opera 12.17 portable (presto based): (opera:config) I find
Certificate revocation lists for ssl (enable online revocation of certificates for ssl connections)

I assume this should be unchecked

The original setting should be OK.
Add Thank You Quote this message in a reply
Jan. 25, 2015, 03:28 PM
Post: #52
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 04:14 AM)amy Wrote:  I was actually working on a Proxo patcher for this already...

ooops...
Add Thank You Quote this message in a reply
Jan. 25, 2015, 03:36 PM
Post: #53
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 03:25 PM)JJoe Wrote:  
(Jan. 24, 2015 08:30 PM)soccerfan Wrote:  And now, a question:
In Opera 12.17 portable (presto based): (opera:config) I find
Certificate revocation lists for ssl (enable online revocation of certificates for ssl connections)

I assume this should be unchecked

The original setting should be OK.

The default setting is to have it enabled (checked). Should I leave it enabled?

soccerfan
Add Thank You Quote this message in a reply
Jan. 25, 2015, 04:21 PM (This post was last modified: Jan. 25, 2015 04:24 PM by JJoe.)
Post: #54
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 03:36 PM)soccerfan Wrote:  The default setting is to have it enabled (checked). Should I leave it enabled?

As I understand it, normally it is a personal choice...

Enabled, the browser will check to see if the site's certificate has been revoked but this slows things down and may fail.
Disabled, should be quicker but may not be as secure.

However, if a mitm proxy is always handling the certificate verification, there should be no need for the browser to check for revocation.

https://www.google.com/search?q=online+r...rtificates
Add Thank You Quote this message in a reply
[-] The following 1 user says Thank You to JJoe for this post:
soccerfan
Jan. 25, 2015, 06:45 PM
Post: #55
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
So far, no success on 98SE. I decided to completely remove OpenSSL and start the whole process over. I reinstalled the Visual C++ 2008 Redistributables for Windows 9x/NT4, first the Runmagic.bat, then the install global.bat. I then installed Win32OpenSSL_Light-1_0_1L.exe and ran the FixSSL_9xNT4.bat in its bin folder. Rebooted. I copied Proxomitron.exe to the folder containing the patcher and ran it. The checksum verifies. Copied it and the 2 certificate files back to the Proxomitron folder. Extracted the 2 DLLs from amy in post 35 to the Proxomitron folder. When I open an HTTPS page, I get:
"Sorry, but I need...
ssleay32.dll and libeay.dll
to do this.

I'll experiment with the KernelEx settings to see if it helps but it didn't make any difference the last time.

Question. Maybe I'm just not thinking clearly (again) to see this correctly. What is the purpose of installing OpenSSL and "fixing" its files for 9X systems, then copying patched DLLs directly to the Proxomitron folder? It seems to me that the installed OpenSSl isn't going to be used when the files are also in the applications folder.
Add Thank You Quote this message in a reply
Jan. 25, 2015, 07:10 PM
Post: #56
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 03:03 PM)soccerfan Wrote:  The fourth link refers to opera 12.16. For opera 12.17, the changelog of 04-23-2014
(http://www.opera.com/docs/changelogs/windows/1217/) says:

Fixes and stability enhancements since Opera 12.16
Security fixes
Opera now checks signature before installing the executable file
Updates to OpenSSL versions

Could this update to OpenSSL versions have fixed the opera bug?
I will get back to you on that - need to check Opera 12.16 and 12.17 differences.

@herbalist: The OpenSSL DLLs I posted do not need anything else and should work on 98SE directly - I need to find a suitable system to test it on first.

You may also try the 1.0.1l DLLs here:
http://indy.fulgan.com/SSL/openssl-1.0.1...-win32.zip
Add Thank You Quote this message in a reply
Jan. 25, 2015, 08:18 PM
Post: #57
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
amy Wrote:@herbalist: The OpenSSL DLLs I posted do not need anything else and should work on 98SE directly - I need to find a suitable system to test it on first.
When I use the files from your DLL.zip extracted to the Proxomitron folder, Dependency Walker reports:
Code:
LoadLibraryA("ssleay32.dll") returned NULL. Error: A device attached to the system is not functioning (31).
Using the DLLs from slproweb.com with osslkrnl.dll copied to the Proxomitron folder:
Code:
GetProcAddress(0x00000000, "LdrUnloadDll") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2D4066 and returned NULL. Error: The handle is invalid (6).
DllMain(0x7F2D0000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system\UNICOWS.DLL" returned 1 (0x1).
DllMain(0x30C20000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system\VC90KRNL.DLL" called.
DllMain(0x30C20000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\windows\system\VC90KRNL.DLL" returned 1 (0x1).
DllMain(0x78520000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\program files\prox\MSVCR90.DLL" called.
LoadLibraryA("user32.dll") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2D417A.
LoadLibraryA("user32.dll") returned 0xBFC00000.
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "FlsAlloc") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error: The system could not find the environment option that was entered (203).
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "FlsGetValue") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error: The system could not find the environment option that was entered (203).
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "FlsSetValue") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error: The system could not find the environment option that was entered (203).
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "FlsFree") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error: The system could not find the environment option that was entered (203).
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "EncodePointer") called from "c:\windows\system\UNICOWS.DLL" at address 0x7F2FE6BD and returned NULL. Error:
GetProcAddress(0xBFF70000 [c:\windows\system\KERNEL32.DLL], "InitializeCriticalSectionAndSpinCount") called from "c:\windows\system\VC90HOOK.DLL" at address 0x784710A0 and returned 0x873D9C38.
DllMain(0x78520000, DLL_PROCESS_ATTACH, 0x00000000) in "c:\program files\prox\MSVCR90.DLL" returned 0 (0x0).
DllMain(0x30C20000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\VC90KRNL.DLL" called.
DllMain(0x30C20000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\VC90KRNL.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\VC90KRNL.DLL" at address 0x30C20000.
DllMain(0x7F2D0000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\UNICOWS.DLL" called.
DllMain(0x7F2D0000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\UNICOWS.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\UNICOWS.DLL" at address 0x7F2D0000.
Unloaded "c:\windows\system\IMM32.DLL" at address 0xBFE20000.
DllMain(0x7F690000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\AVICAP32.DLL" called.
DllMain(0x79630000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\MSVFW32.DLL" called.
DllMain(0x79630000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\MSVFW32.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\MSVFW32.DLL" at address 0x79630000.
Unloaded "c:\windows\system\WOW32.DLL" at address 0xBFDE0000.
DllMain(0x7E080000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\DCIMAN32.DLL" called.
DllMain(0x7E080000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\DCIMAN32.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\DCIMAN32.DLL" at address 0x7E080000.
Unloaded "c:\windows\system\WINMM.DLL" at address 0xBFDD0000.
DllMain(0x7FE50000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\OLEDLG.DLL" called.
DllMain(0x7FE50000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\OLEDLG.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\OLEDLG.DLL" at address 0x7FE50000.
DllMain(0x7FC30000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\MSVCRT20.DLL" called.
DllMain(0x7FC30000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\MSVCRT20.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\MSVCRT20.DLL" at address 0x7FC30000.
DllMain(0x65F00000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\OLE32.DLL" called.
DllMain(0x65F00000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\OLE32.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\OLE32.DLL" at address 0x65F00000.
DllMain(0x7FE40000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\WINSPOOL.DRV" called.
DllMain(0x7FE40000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\WINSPOOL.DRV" returned 1 (0x1).
Unloaded "c:\windows\system\WINSPOOL.DRV" at address 0x7FE40000.
DllMain(0x78470000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\VC90HOOK.DLL" called.
DllMain(0x78470000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\VC90HOOK.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\VC90HOOK.DLL" at address 0x78470000.
DllMain(0x7F690000, DLL_PROCESS_DETACH, 0x00000000) in "c:\windows\system\AVICAP32.DLL" returned 1 (0x1).
Unloaded "c:\windows\system\AVICAP32.DLL" at address 0x7F690000.
LoadLibraryA("ssleay32.dll") returned NULL. Error: A dynamic link library (DLL) initialization routine failed (1114).
I'll give the DLLs you just linked to a try. If there's anything I can send or post that would help, let me know. It seems to me that slproweb.com hasn't actually tested the new versions of OpenSSL on these systems and the information about OpenSSL being compatible with them is no longer correct. The Tor website has the same issue, saying that the expert bundle is compatible with 98SE. In reality, the last 98SE compatible version is 0.2.3.25.
Add Thank You Quote this message in a reply
Jan. 25, 2015, 09:38 PM
Post: #58
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 08:18 PM)herbalist Wrote:  When I use the files from your DLL.zip extracted to the Proxomitron folder, Dependency Walker reports:
Code:
LoadLibraryA("ssleay32.dll") returned NULL. Error: A device attached to the system is not functioning (31).

I have it working on my old Win98se laptop.
Try downloading and extracting the DLLs again. Maybe something happened to ssleay32.

I'll try to check another machine later.
Add Thank You Quote this message in a reply
Jan. 25, 2015, 11:06 PM
Post: #59
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
For verification:
ssleay32.dll
MD5 15ff464c5d134a8f7422aa5f97123897
SHA-256 c23df0530b04c3975e60a1ff8759244ef5b58cc45e8a0eb4b6229556cac413e4

libeay32.dll
MD5 7c0670313ca1577f1339e70a168c97ef
SHA-256 797a5aec1d0eb47e50ca748eec78bf16d211454352e5fdbca3adcc853921911c

Patched proxomitron.exe, aka ProxN45j+SSL+RWIN.exe
MD5 d675477025d6af758f10ed1b87a366e6
SHA-256 5a6160c7f6eeb28b10de7fc698f115176c8e579e44b4e209b088942f12e33425

Are these correct?
Add Thank You Quote this message in a reply
Jan. 25, 2015, 11:47 PM
Post: #60
RE: Adapting proxo 4.5 to the latest OpenSSL DLLs
(Jan. 25, 2015 11:06 PM)herbalist Wrote:  For verification:
...
Are these correct?

They are not what I am using. I have

Code:
ssleay32.dll
MD-5: 61F9CB6B215859B0820ADEAFC53AB7E6
SHA-256: 2A9E28D33332141D92D25D1C920D909DF836DF424EB89BAFD2669D860A7D9EAE

libeay32.dll
MD-5: 9407660B082481A9A135BCAC420E53F8
SHA-256: ED425BBCD99F426AB6B08FD48111F01049CE75A173AEB23C82E7501780AE0DA9

Patched proxomitron.exe, aka ProxN45j+SSL+RWIN.exe
MD-5: D675477025D6AF758F10ED1B87A366E6
SHA-256: 5A6160C7F6EEB28B10DE7FC698F115176C8E579E44B4E209B088942F12E33425

Got mine from Post35.
Downloaded again and files are the same.
Add Thank You Quote this message in a reply
Post Reply 


Forum Jump: