De la mano de hacking-avanzado.blogspot.com nos enseña como encontrar la página del administrador de una web usando el script admin-scan.py ya posteado anteriormente aquí, pero lo interesente no es ese método sino el segundo, el de encontrar el admin por medio de robots.txt que yo por lo menos no conocía.
Algunas veces sucede que podemos encontrar una vulnerabilidad de sql-injection y, a simple vista, no hay quien vea dónde se encuentra la página de loggin del admin, por lo que no podemos terminar de reventar la página. Es aquí donde el siguiente script, bajado de darkc0de, resulta útil:
#/usr/bin/python
import sys, os, time, httplib
if sys.platform == 'linux' or sys.platform == 'linux2':
clearing = 'clear'
else:
clearing = 'cls'
os.system(clearing)
if len(sys.argv) != 2:
print "\n|---------------------------------------------------------------|"
print "| b4ltazar[@]gmail[dot]com |"
print "| 03/2009 Admin login finder v2.0 |"
print "| Help: admin-find.py -h |"
print "| Visit www.darkc0de.com and www.ljuska.org |"
print "|---------------------------------------------------------------|\n"
sys.exit(1)
for arg in sys.argv:
if arg == '-h':
print "\n|-------------------------------------------------------------------------------|"
print "| b4ltazar[@]gmail[dot]com |"
print "| 03/2009 Admin login finder v2.0 |"
print "| Usage: admin-find.py www.site.com |"
print "| Example: admin-find.py site.com |"
print "| Visit www.darkc0de.com and www.ljuska.org |"
print "|-------------------------------------------------------------------------------|\n"
sys.exit(1)
site = sys.argv[1].replace("http://","").rsplit("/",1)[0]
site = site.lower()
admin_path = ['admin.php','admin/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.php','admin/index.php','admin/login.php','admin/admin.php','admin/account.php','joomla/administrator','login.php',
'admin_area/admin.php','admin_area/login.php','siteadmin/login.php','siteadmin/index.php','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.php','bb-admin/index.php','bb-admin/login.php','bb-admin/admin.php','admin/home.php','admin_area/login.html','admin_area/index.html','admin/controlpanel.php','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.php','cp.php','administrator/index.php','administrator/login.php','nsw/admin/login.php','webadmin/login.php','admin/admin_login.php','admin_login.php','administrator/account.php','administrator.php','admin_area/admin.html','pages/admin/admin-login.php','admin/admin-login.php','admin-login.php','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','modelsearch/login.php','moderator.php','moderator/login.php','moderator/admin.php','account.php','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.php','admincontrol.php',
'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.php','adminarea/index.html','adminarea/admin.html','webadmin.php','webadmin/index.php','webadmin/admin.php','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.php','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.php','account.html','controlpanel.html','admincontrol.html','panel-administracion/login.php','wp-login.php','adminLogin.php','admin/adminLogin.php','home.php','adminarea/index.php','adminarea/admin.php','adminarea/login.php','panel-administracion/index.php','panel-administracion/admin.php','modelsearch/index.php','modelsearch/admin.php','admincontrol/login.php','adm/admloginuser.php','admloginuser.php','admin2.php','admin2/login.php','admin2/index.php','adm/index.php','adm.php','affiliate.php','adm_auth.php','memberadmin.php','administratorlogin.php','administrador/']
print "\n|---------------------------------------------------------------|"
print "| b4ltazar[@]gmail[dot]com |"
print "| 03/2009 Admin login finder v2.0 |"
print "| Visit www.darkc0de.com and www.ljuska.org |"
print "|---------------------------------------------------------------|\n"
print "\n[-] %s" % time.strftime("%X")
print "[+] Target:",site
print "[+] Checking paths..."
print
try:
for admin in admin_path:
admin = admin.replace("\n","")
admin = "/" + admin
connection = httplib.HTTPConnection(site)
connection.request("GET",admin)
response = connection.getresponse()
print "%s %s %s" % (admin, response.status, response.reason)
except(KeyboardInterrupt,SystemExit):
raise
except:
pass
El script lo único que hace es pedir un montón de páginas que podrían ser la que buscamos, por ejemplo /admin/ y /administrador/ y sacar el return code. Si vemos un 200 es que hemos encontrado lo que buscamos. Un poco primitivo, pero eficiente. Al final de la lista de url's a intentar, he añadido "administrador", porque estos scripts suelen obviar el idioma español.
Lo ejecutamos así:
python adminfinder.py http://www.victima.es/ |grep -v 404
Y el resultado es éste:
Todos los NOT FOUND han sido redirigidos a la página de error, por eso da un 301. Pero, si os fijáis, ha encontrado /administrator/, que es la página de loggin del admin.
Además de este script, y como un recurso adicional, podemos echarle un ojo al archivo robots.txt, porque a veces los admins se olvidan de borrar los directorios que aparecen por defecto.En este caso, si vemos robots.txt nos encontramos esto:
User-agent: * Disallow: /administrator/ Disallow: /cache/ Disallow: /components/ [...]
Entre los directorios listados podemos encontrar de nuevo /administrator/
Script original aquí.
Fuente: http://hacking-avanzado.blogspot.com/