Wunderbar98 Posted February 22, 2021 Share Posted February 22, 2021 (edited) == Arachne Web Browser Community Edition for DOS with TLS 1.3 Hack == = Overview = Arachne v1.97 (2013) is a DOS graphic internet client (web browser, FTP, email) that can technically be modified for TLS 1.3 web browsing support . Although it does not handle encrypted web pages natively, a Wget APM (Arachne Package Manager) provides limited TLS support. Additional work is then needed to manually install and configure a newer Wget to achieve TLS 1.2 functionality (grab HTTPS web page) then install a newer cURL for TLS 1.3 (browse HTTPS web page) functionality. Note TLS functionality is clunky and this is mostly just a fun computing project and proof of concept. The steps below were tested in vanilla Windows 98 SE using it's DOS v7.10. Below is a compilation of the most relevant information needed to download, install and run the browser. Project homepage and screenshot. http://www.glennmcc.org/ https://en.wikipedia.org/wiki/File:Arachne_VESA_Mode.png = Prerequisites = - Working DOS system - Basic DOS knowledge - Functional DOS network  - Software downloads below = Download = Download Arachne (a197gpl.zip, 1.21 MB). http://www.glennmcc.org/arachne/ Download Wget package for Arachne (wgetssl2.apm, direct link, 839 Kb). http://www.glennmcc.org/apm/wgetssl2.apm Download newer Wget (wget117b.7z, 1,83 MB). http://www.glennmcc.org/download/mik/ Additional helper software used (not linked) was 7-Zip v9.20 (Windows), Enhanced DOSKEY (DOS) and XCOPY (DOS). Built-in helper software used was EDIT (DOS editor) and Notepad (Windows). = Setup Arachne = This example uses a C:\DOS\ directory with additional subdirectories for relevant software, modify as desired. In a temporary directory extract 'a197gpl.zip' then 'A197GPL.EXE'. Rename the extracted 'A197GPL' directory to 'ARACHNE' and copy it to C:\DOS\. No AUTOEXEC.BAT or CONFIG.SYS entries were used aside from DOSKEY /INSERT in C:\AUTOEXEC.BAT. SmartDrive may be added, initiated manually after boot or used in a custom Arachne BAT file, as outlined below. Boot into DOS, this system needs a cold boot between Windows 98 and DOS to initialize the packet driver. Manually load SmartDrive, CuteMouse, the packet driver and CWSDPMI.EXE, example below. As seen from the command pathways, Arachne includes CuteMouse and CWSDPMI.EXE. On this test system SmartDrive was already installed for usage and no additional arguments are needed. For software like CuteMouse, check out usage options and modify based on the hardware used (eg. CTMOUSE.EXE /?). The example below allows SmartMouse scrolling if mouse compatible (note /O is the letter 'O'). C:\WINDOWS\SMARTDRV.EXE C:\DOS\ARACHNE\SYSTEM\DEVDRVRS\CTMOUSE.EXE /R2 /O C:\DOS\LNE100\LNE100TX.COM 0x60 C:\DOS\ARACHNE\CWSDPMI.EXE -P Nagivate to C:\DOS\ARACHNE\ and run SETUP.BAT. Use the wizard to adjust browser resolution, modify preferences and confirm packet driver function. Only continue below once happy with the configuration. At this point only HTTP (not HTTPS) site connections are possible, which excludes most of the modern internet. Note Google still works with HTTP only (http://www.google.com). Note if exiting and restarting Arachne during the same session causes a memory error just Ctrl-Alt-Delete to restart DOS. Manually reload the items listed above (SmartDrive, mouse, packet driver, CWSDPMI.EXE) and resume Arachne with ARACHNE -R (resume), unless you need to run SETUP.BAT again. Useful tips: press 'r' (reload) if HTTP pages don't load, F8 key clears cache, F10 key for Arachne's desktop, right-mouse click goes back, Backspace key displays browsing history. = Install Wget via Arachne Package Manager = There are two methods to install the Wget package for Arachne, via web page (method 1) or from the downloaded APM file (method 2, wgetssl2.apm). 1) Method 1 (install wgetssl2.apm via webpage) Open Arachne (ARACHNE -R) to the Arachne Package Manager packages page. Note numerous packages are available, untested and some outdated. http://www.glennmcc.org/apm Select (to install) 'wgetssl2.apm' (858345 bytes). Important, scroll 2/3 down the Wget installation summary page and click 'Link here ad2file.dgi to modify saveas.ah to include the wgetssl interface', otherwise the desired Wget functionality for SSL will not be available. 2) Method 2 (install wgetssl2.apm from local drive) Open Arachne (ARACHNE -R) to the Arachne 'desktop' (F10 key). Click Utilities -> Install Arachne Package. Navigate to downloaded 'wgetssl2.apm' file and select it to install. Important, scroll 2/3 down the Wget installation summary page and click 'Link here ad2file.dgi to modify saveas.ah to include the wgetssl interface', otherwise the desired Wget functionality for SSL will not be available. Whichever method was used above, exit (Alt-x) then restart Arachne (ARACHNE -R). Attempt to load an HTTPS page via URL bar, example https://www.google.com. An error message will indicate 'Unknown protocol in URL' and 'The requested protocol is not yet supported'. Press F2 (save or send document shortcut), which provides some prompts. Click 'Get SSL page or post data via SSL using Wget'. The Arachne browser will exit and Wget will attempt to fetch the page. This (old) Wget may fail with 'Unable to establish an SSL connection'. Hopefully it will, however, succeed and then when prompted 'Press any key to continue'. Arachne will restart, rational for using CWSDPMI.EXE with the permanent switch, and the web page will display. As this Wget will only fetch some HTTPS pages, the section below will update and configure a newer release of Wget for DOS. = Install Updated Wget = Exit Arachne and work from DOS or Windows. Following the Wget APM install above, rename C:\DOS\ARACHNE\WGET111B\WGET.EXE to WGETB.EXE. The 'B' stands for Broken. MOVE C:\DOS\ARACHNE\WGET111B\WGET.EXE C:\DOS\ARACHNE\WGET111B\WGETB.EXE Extract the downloaded 'wget117b.7z' file to a temporary directory. Copy the newly extracted WGET.EXE to C:\DOS\ARACHNE\WGET111B\. COPY C:\WINDOWS\TEMP\WGET117B\BIN\WGET.EXE C:\DOS\ARACHNE\WGET111B\WGET.EXE Backup the new WGET.EXE in case it's overwritten by Arachne or user error. The 'G' stands for Good. COPY C:\DOS\ARACHNE\WGET111B\WGET.EXE C:\DOS\ARACHNE\WGET111B\WGETG.EXE Warning the custom Wget install may revert to the old WGET.EXE and configuration. It may be related to re-running SETUP.BAT or some setting components. This is why the Arachne Setup section above recommends finishing with SETUP.BAT preferences before continuing. Recommend backing up the entire ARACHNE directory once all the tweaks below are completed (< 7 MB). XCOPY /E C:\DOS\ARACHNE C:\DOS\ARACHNE1 Note running DIR in C:\DOS\ARACHNE\WGET111B\ clearly shows the differing file sizes of the older and newer WGET.EXE files. If SSL web page fetches break review these file sizes, it may be that Arachne reset the WGET.EXE file and custom configurations outlined below. If so restore Arachne from the back up directory recommended above. = Configure Updated Wget = Unfortunately the newer WGET.EXE does not recognize the original C:\DOS\ARACHNE\WGET111B\WGETRC file. This test system uses a simple DHCP connection and the following configuration files have been significantly simplified to provide new Wget functionality. Modify as needed based on the system's network connection type and any desired Wget arguments. Run WGET.EXE --HELP | MORE for usage information or direct usage help to a file for review. WGET.EXE --HELP > WGETHELP.TXT Note the modified WGETSSL.BAT file below has commented out (REM) the 'Press any key to continue' PAUSE command for streamlined functionality. Recommend keeping PAUSE enabled until Wget SSL page fetches work well then disable PAUSE for faster performance. C:\DOS\ARACHNE\WGETGRAB.BAT file: CD C:\DOS\ARACHNE\DOWNLOAD C:\DOS\ARACHNE\WGET111B\WGET.EXE --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0" --random-file=C:\DOS\ARACHNE\WGET111B\WGET.EXE --no-check-certificate -nd -c -p %1 CD .. PAUSE C:\DOS\ARACHNE\WGETSSL.BAT file: CD C:\DOS\ARACHNE\WGET111B WGET.EXE %1 --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0" --random-file=WGET.EXE --no-check-certificate --load-cookies=COOKIES.TXT --save-cookies=COOKIES.TXT -c -k -O %2 CD .. REM PAUSE = Confirm TLS v1.2 Support = Restart Arachne and load the URL below to confirm TLS 1.2 support, using the Wget SSL fetch mechanism outlined above. https://www.ssllabs.com/ssltest/viewMyClient.html = Tweak DHCP Connecton = If the first browser launch resulted in a 'Configuring through BOOTP' delay and then connected via DHCP anyway, replace the WATTCP.CFG configuration file in C:\DOS\ARACHNE\ containing the line below . Also copy this modified WATTCP.CFG file to C:\DOS\ARACHNE\WGET111B\ for WGET.EXE. Note 'my_ip' is literally 'my_ip', do not substitute this for your system's IP (Internet Protocol) address. Note a blank (empty) line is expected below the 'my_ip=dhcp' entry. WATTCP.CFG file: my_ip=dhcp = Custom Arachne Batch File = After configuration and testing create a custom batch file to launch Arachne. As the Arachne directory already has an ARACHNE.BAT file, personal preference is to name a custom launcher 0ARACHNE.BAT (zero), which sorts to the top when running 'DIR /W /ON /P'. C:\DOS\ARACHNE\0ARACHNE.BAT file example: C:\WINDOWS\SMARTDRV.EXE C:\DOS\ARACHNE\SYSTEM\DEVDRVRS\CTMOUSE.EXE /R2 /O C:\DOS\LNE100\LNE100TX.COM 0x60 C:\DOS\ARACHNE\CWSDPMI.EXE -P C:\DOS\ARACHNE\ARACHNE -R = Usage and Help = In Arachne click the toolbar's question mark button (F1 key). = Limitations = Although fun Arachne has limitations and is not considered a go to DOS web browser. Performance and usage is clunky and it does not run as well as more recently updated TLS 1.2 capable DOS browsers. Additional Wget configuration would be needed to post data to HTTPS sites, such as a forum login. The Wget SSL fetch routine is tedious and inefficient. HTTPS URL strings are limited to 80 characters or they fail. Filename saves will also fail if not modified for DOS 8.3 format. Arachne sometimes hangs, recommend disabling 'Try to use HTTP instead of HTTPS' and 'Auto-download inline images'. To download and view select images right-click the image placeholder. The 'Would you like some coffee?' prompt in the status bar when performing tasks, such as clearing cache, is indicative of the browser's sub-optimal performance. END  Other web browsers for DOS with TLS 1.2 support. https://msfn.org/board/topic/181853-links-web-browser-community-edition-for-dos-with-tls-12/ https://msfn.org/board/topic/182400-lynx-web-browser-community-edition-for-dos-with-tls-12/  Review this DOS Networking guide if the system does not yet have a working DOS packet driver. Note mTCP is not required to run Arachne as it handles connectivity internally. https://msfn.org/board/topic/177106-running-vanilla-windows-98-in-2020-and-beyond/page/32/?tab=comments#comment-1187090 For network adapters that do not have a working packet driver, review forum member @Deomsh's NDIS 2 driver guide below. https://msfn.org/board/topic/181853-links-web-browser-for-dos-with-tls-12-community-edition/?tab=comments#comment-1187234  More WATTCP configuration information. http://wiki.freedos.org/wiki/index.php/Networking_FreeDOS_-_WATTCP Edited March 16, 2021 by Wunderbar98 1 Link to comment Share on other sites More sharing options...
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!Register a new account
Already have an account? Sign in here.Sign In Now