lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <42CA2DDB.5030606@zataz.net> Date: Tue Jul 5 12:57:33 2005 From: exploits at zataz.net (ZATAZ Audits) Subject: ekg insecure temporary file creation and arbitrary code execution ######################################################### ekg insecure temporary file creation and arbitrary code execution Vendor: http://dev.null.pl/ekg/ Advisory: http://www.zataz.net/adviso/ekg-06062005.txt Vendor informed: yes Exploit available: no Impact : high Exploitation : high ######################################################### The vulnerabilities are caused due to temporary file being created insecurely. This can be exploited via symlink attacks in combination to create and overwrite arbitrary files with the privileges of the user running the affected script and also arbitrary command possible by spiking the temporary file. ########## Versions: ########## ekg <= 2005-06-05 22:03 ########## Solution: ########## For the symlink attack use kernel patch such as grsecurity ######### Timeline: ######### Discovered : 2005-05-27 Vendor notified : 2005-06-06 Vendor response : no response Vendor fix : no fix Vendor Sec report (vendor-sec@....de) : 2005-06-27 Disclosure : 2005-07-04 ##################### Technical details : ##################### Vulnerable code : ----------------- In contrib/scripts/linki.py 95 def czyjest (): 96 if os.path.exists('/tmp/rmrmg_ekg_url'): 97 wejsc= open ('/tmp/rmrmg_ekg_url') 98 file = wejsc.readlines() 99 dlug=len(file) 100 wejsc.close() 101 #ekg.printf("generic", "liczno?? %d" %(dlug)) 102 return file 103 else: 104 return 0 Then 35 def handle_keypress(meta, key): 36 if key == 269: 37 ekg.printf("generic", "wci?nieto F5") 38 nurl=czyjest() 39 if nurl == 0: 40 ekg.printf("generic", "nie ma zadnego adresu URL") 41 else: 42 dlug=len(nurl) 43 if dlug == 1: 44 ekg.printf("generic", "otwieram %s w nowej zak?adce" %(nurl[0])) 45 os.system("MozillaFirebird -remote 'openURL(%s,new-tab)'" %(nurl[0])) 46 os.system('rm /tmp/rmrmg_ekg_url') 47 else: 48 ekg.printf("generic", "link?w mam %d" %(dlug)) 49 wielejest(nurl) 50 ekg.printf("generic", "otwieram %s w nowej zak?adce" %(nurl[0])) 51 os.system("MozillaFirebird -remote 'openURL(%s, new-tab)'" %(nurl[0])) 52 elif key == 270: 53 ekg.printf("generic", "wcisni?to F6") 54 nurl=czyjest() 55 if nurl == 0: 56 ekg.printf("generic", "nic nie moge skasowa? - nie mazadnego adresu URL") 57 else: 58 dlug=len(nurl) 59 if dlug == 1: 60 ekg.printf("generic", "kasuje adres %s" %(nurl[0])) 61 os.system('rm /tmp/rmrmg_ekg_url') 62 else: 63 ekg.printf("generic", "jest wiele link?w") 64 wielejest(nurl) 65 ekg.printf("generic", "kasuje pierwszy czyli: %s"%(nurl[0])) 66 elif key == 271: 67 ekg.printf("generic", "wcisni?to F7") 68 nurl=czyjest() 69 if nurl == 0: 70 ekg.printf("generic", "nie ma zadnego adresu URL") 71 else: 72 dlug=len(nurl) 73 if dlug == 1: 74 ekg.printf("generic", "otwieram %s w nowym oknie"%(nurl[0])) 75 os.system("MozillaFirebird %s" %(nurl[0])) 76 os.system('rm /tmp/rmrmg_ekg_url') 77 else: 78 ekg.printf("generic", "link?w mam %d" %(dlug)) 79 wielejest(nurl) 80 ekg.printf("generic", "otwieram %s w nowym oknie"%(nurl[0])) 81 elif key == 272: 82 ekg.printf("generic", "wcisni?to F8") 83 nurl=czyjest() 84 ekg.printf("generic", "F5 - otwiera w nowej zak?adce; F7 wnowym oknie, a F6 kasuje, wszystko tyczy si? pierwszej po zycji zlisty") 85 if nurl == 0: 86 ekg.printf("generic", "nie ma zadnego adresu URL") 87 else: 88 dlug=len(nurl) 89 ekg.printf("generic", "link?w mam %d oto one:" %(dlug)) 90 for po in nurl: 91 ekg.printf("generic", "%s" %(po)) 92 return 1 ######### Related : ######### Gentoo Bugs report : http://bugs.gentoo.org/show_bug.cgi?id=94172 CVE : CAN-2005-1916 ##################### Credits : ##################### Eric Romang (eromang@...az.net - ZATAZ Audit) Thxs to Gentoo Security Team. (Taviso, jaervosz, solar, tigger, etc.)
Powered by blists - more mailing lists