Thursday, June 1, 2023

Hacking Windows 95, Part 1

During a CTF game, we came across very-very old systems. Turns out, it is not that easy to hack those dinosaur old systems, because modern tools like Metasploit do not have sploits for those old boxes and of course our "133t h4cking skillz" are useless without Metasploit... :)

But I had an idea: This can be a pretty good small research for fun.

The rules for the hack are the following:
  1. Only publicly available tools can be used for this hack, so no tool development. This is a CTF for script bunniez, and we can't haz code!
  2. Only hacks without user interaction are allowed (IE based sploits are out of scope).
  3. I need instant remote code execution. For example, if I can drop a malware to the c: drive, and change autoexec.bat, I'm still not done, because no one will reboot the CTF machine in a real CTF for me. If I can reboot the machine, that's OK.
  4. I don't have physical access.
I have chosen Windows 95 for this task. First, I had to get a genuine Windows 95 installer, so I visited the Microsoft online shop and downloaded it from their official site.

I installed it in a virtualized environment (remember, you need a boot floppy to install from the CD), and it hit me with a serious nostalgia bomb after watching the installer screens. "Easier to use", "faster and more efficient", "high-powered performance", "friendly", "intuitive interface". Who does not want that? :)






Now that I have a working Windows 95 box, setting up the TCP/IP is easy, let's try to hack it!

My first tool is always nmap. Let's scan the box! Below I'm showing the interesting parts from the result:

PORT      STATE           SERVICE       VERSION 139/tcp   open            netbios-ssn 137/udp   open|filtered   netbios-ns 138/udp   open|filtered   netbios-dgm Running: Microsoft Windows 3.X|95 OS details: Microsoft Windows for Workgroups 3.11 or Windows 95 TCP Sequence Prediction: Difficulty=25 (Good luck!) IP ID Sequence Generation: Broken little-endian incremental 

The first exciting thing to note is that there is no port 445! Port 445 is only since NT 4.0. If you check all the famous windows sploits (e.g., MS03-026, MS08-067), all of them use port 445 and named pipes. But there are no named pipes on Windows 95!

Because I'm a Nessus monkey, let's run a free Nessus scan on it!

Only one critical vulnerability found:
Microsoft Windows NT 4.0 Unsupported Installation Detection

Thanks for nothing, Nessus! But at least it was for free.

Next, I tried GFI Languard, nothing. It detected the machine as Win95, the opened TCP port, and some UDP ports as open (false-positive), and that's all...

Let's try another free vulnerability scanner tool, Nexpose. The results are much better:
  • CIFS NULL Session Permitted  
  • Weak LAN Manager hashing permitted
  • SMB signing not required
  • Windows 95/98/ME Share Level Password Bypass   
  • TCP Sequence Number Approximation Vulnerability  
  • ICMP netmask response
  • CIFS Share Readable By Everyone
I think the following vulnerabilities are useless for me at the moment:
  • Weak LAN Manager hashing permitted - without user interaction or services looking at the network, useless (I might be wrong here, will check this later)
  • TCP Sequence Number Approximation Vulnerability - not interesting
  • ICMP netmask response - not interesting
  • CIFS Share Readable By Everyone - unless there is a password in a text file, useless
But we have two interesting vulns:
  • CIFS NULL Session Permitted  - this could be interesting, I will check this later ...
  • Windows 95/98/ME Share Level Password Bypass - BINGO!
Let me quote Nexpose here:

"3.2.3 Windows 95/98/ME Share Level Password Bypass (CIFS-win9x-onebyte-password)

A flaw in the Windows 95/98/ME File and Print Sharing service allows unauthorized users to access file and print shares by sending the first character of the password. Due to the limited number of attempts required to guess the password, brute force attacks can be performed in just a few seconds.

Established connection to share TEST with password P."

The vulnerability description at MS side:

For example if the password is "Password" (without quotes) and the client sends the password "P" (without quotes) and the length of 1, the client is authenticated. To find the rest of the password, the attacker increments the length to 2 and starts guessing the second letter until he reaches "PA" and gets authenticated again. As share passwords in Windows 95 are not case sensitive, "Pa" and "PA" will also be accepted. The attacker can continue to increment the length and guessing the next letter one-by-one until he gets the full "PASSWORD" (as the maximum length is 8 characters).

I believe all characters between ALT+033 and ALT+255 can be used in the share password in Windows 95, but as it is case insensitive, we have 196 characters to use, and a maximum length of 8 characters. In worst case this means that we can guess the full password in 1568 requests. The funny thing is that the share password is not connected to (by default) any username/account, and it cannot be locked via brute force.

Luckily there is a great tool which can exploit this vulnerability:

Let's check this tool in action:


W00t w00t, it brute forced the password in less then 2 seconds!

Looking at a wireshark dump we can see how it is done:


As you can see, in the middle of the dump we can see that it already guessed the part "PASS" and it is brute-forcing the fifth character, it founds that "W" is the correct fifth character, and starts brute-forcing the sixth character.

If we are lucky with the CTF, the whole C:\ drive is shared with full read-write access, and we can write our team identifier into the c:\flag.txt. But what if we want remote code execution? Stay tuned, this is going to be the topic of the next part of this post.
More articles

  1. Hacking Tools Usb
  2. Pentest Reporting Tools
  3. Pentest Tools Subdomain
  4. Best Hacking Tools 2020
  5. Hack Apps
  6. Hacking Tools Kit
  7. Hacker Tools Apk Download
  8. Hack Tool Apk
  9. Hacker Tools For Mac
  10. Pentest Tools For Android
  11. Wifi Hacker Tools For Windows
  12. Pentest Tools Github
  13. Hack Tools For Ubuntu
  14. Hacker Tools For Ios
  15. Usb Pentest Tools
  16. Free Pentest Tools For Windows
  17. Hack Tools Mac
  18. Easy Hack Tools
  19. Hack Tool Apk
  20. Hacker Tools Hardware
  21. Hacking Tools Windows
  22. Hacker Tools For Ios
  23. Hacker Tools For Windows
  24. Hack Tools For Games
  25. Hacker Tools Linux
  26. Hacking Tools Mac
  27. Termux Hacking Tools 2019
  28. Top Pentest Tools
  29. Free Pentest Tools For Windows
  30. Pentest Tools Framework
  31. Top Pentest Tools
  32. Hacker Search Tools
  33. Hacking Tools Name
  34. Usb Pentest Tools
  35. Growth Hacker Tools
  36. Hacking Tools
  37. Hacker Security Tools
  38. Hacking Tools For Windows
  39. Hacking Tools Mac
  40. Hacker Security Tools
  41. Hack Rom Tools
  42. What Is Hacking Tools
  43. Hack Rom Tools
  44. Hack Tools
  45. Pentest Tools Subdomain
  46. Blackhat Hacker Tools
  47. Game Hacking
  48. New Hacker Tools
  49. Best Hacking Tools 2020
  50. Best Pentesting Tools 2018
  51. Hacking Tools For Kali Linux
  52. Pentest Tools Nmap
  53. Pentest Tools Subdomain
  54. Hacker Tools Github
  55. Top Pentest Tools
  56. Hacker Tools For Ios
  57. Hacking Tools For Windows 7
  58. Hacking Tools Usb
  59. Hacker Tools Apk
  60. Hacking Tools
  61. Hack Tools For Ubuntu
  62. Hacking Tools Online
  63. Hacking Tools Download
  64. Pentest Tools Nmap
  65. Hack Tools Download
  66. New Hack Tools
  67. Pentest Tools For Ubuntu
  68. Underground Hacker Sites
  69. Easy Hack Tools
  70. Hack Tools Pc
  71. Hack Tool Apk
  72. Pentest Tools Open Source
  73. Android Hack Tools Github
  74. Hacker Tools Online
  75. Pentest Tools Github
  76. Pentest Tools Apk
  77. Pentest Tools Alternative
  78. Hack Tool Apk No Root
  79. Pentest Tools For Ubuntu
  80. Growth Hacker Tools
  81. Best Hacking Tools 2019
  82. Hack Tool Apk No Root
  83. Pentest Tools Find Subdomains
  84. Hack Tools For Ubuntu
  85. Hacker Tools Apk
  86. Hacker Tools Github
  87. Hacking Tools 2020
  88. Hacker Tools Online
  89. Hacks And Tools
  90. Hack Rom Tools
  91. Game Hacking
  92. Pentest Tools Port Scanner
  93. Pentest Tools Linux
  94. Top Pentest Tools
  95. Pentest Tools Windows
  96. Pentest Tools Github
  97. Tools 4 Hack
  98. Hacking App
  99. Usb Pentest Tools
  100. Pentest Tools Windows
  101. Hack Tools For Windows
  102. Pentest Tools For Windows
  103. Pentest Tools Windows
  104. Hacking Tools Download
  105. Pentest Tools Website Vulnerability
  106. Kik Hack Tools
  107. Blackhat Hacker Tools
  108. Pentest Tools Apk
  109. Hack Tools
  110. Hack Tool Apk
  111. Wifi Hacker Tools For Windows
  112. Kik Hack Tools
  113. Hacking Tools For Windows 7
  114. Hacking Tools Software
  115. Hacker
  116. Hacking Tools 2019
  117. Hacking Tools For Mac
  118. Hacking Tools 2019
  119. Hacking Tools Windows 10
  120. Pentest Tools Tcp Port Scanner
  121. Hacking Tools Software
  122. Hacker Tools Linux
  123. Hack Tools For Windows

No comments:

Post a Comment