Menú

Mostrar Mensajes

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ú

Mensajes - isseu

#82
Un buscador que hice en python, gracias a la idea de otro post de este foro
Con este script puedes facilmente navegar/descargar y ejecutar exploit de exploit-db
Creo que todavia le queda mucho por mejorar.
Para  linux y windows
Pastebin: http://isseu.pastebin.com/G9xh7XDV
Download: http://isseu.pastebin.com/download.php?i=G9xh7XDV

Searchedb.PY
Código (python) [Seleccionar]
#!/usr/bin/env python
import urllib2
import re
import os
import string

def Verde(a):
if os.name=="posix": #linux
return "\033[32m"+a+"\033[0m"
else:
return a
def Rojo(a):
if os.name=="posix": #linux
return "\33[31m"+a+"\033[0m"
else:
return a
def Limpiar():
if os.name=="posix":
os.system("clear") #linux
else:
os.system("cls") #windows
def sisalir(a):
if string.upper(input) =="QUIT":
exit(0)
def GetWeb(web):
source=string
try:
    source=urllib2.urlopen(web)
except urllib2.HTTPError, e:  
    print Rojo("[!] Error HTTP")
    print Rojo(e.code)
    exit(0)  
except urllib2.URLError, e:  
    print Rojo("[!] Error URL")
    print Rojo(e.reason)
    exit(0)
return source.read()
def extension(archivo):
return archivo[archivo.rfind(".")+1:len(archivo)]
def Ejecutar(path):
print "";
type=extension(path)
if type=="py":
print Rojo("[#] system(\"python "+path+")\"")
os.system("python "+path);
print Rojo("[#] Finish")
if type=="pl":
print Rojo("[#] system(\"perl "+path+")\"")
os.system("perl "+path);
print Rojo("[#] Finish")
print ""
def FileType(web):
try:
    web=urllib2.urlopen(urllib2.Request(web))
except urllib2.HTTPError, e:  
    print Rojo("[!] Error HTTP")
    print Rojo(e.code)
    exit(0)  
except urllib2.URLError, e:  
    print Rojo("[!] Error URL")
    print Rojo(e.reason)
    exit(0)
info=str(web.info())
info=re.search("filename=\d+\.(txt|py|pl|cpp|c|jar)",info).group()
info=re.search("txt|py|pl|cpp|c|jar",info).group()
return info
def ExploitDB(input,page=0):
print "";
sitio = "http://www.exploit-db.com/list.php?page="+str(page)+"&description="+input+"&author=&platform=&type=&port=&osvdb=&cve="
source = GetWeb(sitio)
urls=re.findall("href=\'/exploits/\d+",source)
numerop=re.findall("href='/list.php?page=\d+&description="+input+"&platform=&type=&port=&author=&osvdb=&cve='>\d+</a>",source)
names=re.findall("target=_blank>.*</a>",source)
print Verde("[+]")+" Hay "+str(len(names))+" Resultados (+"+Verde(str(len(numerop)))+" paginas):"
print "";
if len(names)>=1:
for i in range(len(names)):
name=names[i]
name=name[14:len(name)-4]
print "["+str(i+1)+"] "+name
valor=raw_input(Verde("[?]")+" Ingrese Id exploit a ver (0 = Siguiente pagina; -1= Buscar Otra Cosa)\n-->")
sisalir(valor);
if string.atoi(valor)<=0:
if string.atoi(valor)==0:
ExploitDB(input,(page+1))
if string.atoi(valor)==2:
return;
else:
subs=urls[string.atoi(valor)-1]
subs=subs[16:len(subs)]
sitio="http://www.exploit-db.com/download/"+subs;
tipo=FileType(sitio)
name=names[i]
name=name[14:len(name)-4]
print "";
print Verde("[+]")+" Exploit Seleccionado:";
print "[ID] #" + subs + ":"
print "[Nombre] " + name
print "[Url] " + sitio
print "[Leng] " + tipo
descargado=False
while (True) or ((string.atoi(valor) > 0) and (string.atoi(valor) < 4)):
if descargado:
valor=raw_input(Verde("[?]")+"Opciones: (1) Ver (2) Descargar (3) Volver Atras (4) Ejecutar\n-->")
else:
valor=raw_input(Verde("[?]")+"Opciones: (1) Ver (2) Descargar (3) Volver Atras\n-->")
sisalir(input);
if string.atoi(valor)==1:
print ""
print "";
source = GetWeb(sitio)
print source;
if string.atoi(valor)==2:
print ""
source = GetWeb(sitio)
subs=subs+"."+FileType(sitio)
FILE = open(subs,"w")
FILE.write(source);
FILE.close();
print Verde("[+]")+" Guardado Como: "+os.curdir+"/"+subs
if (extension(subs)=="pl") or (extension(subs)=="py"):
descargado=True
if string.atoi(valor)==3:
ExploitDB(input,page)
break;
if (string.atoi(valor)==4) and (descargado==True):
Ejecutar(subs)
break;
else:
print Rojo("[!]")+" No hay Resultados Para mostrar"


if __name__ == "__main__":
Limpiar()
print "   ########################"
print "   # "+Rojo("Buscador De Exploits")+" #"
print "   # "+Rojo("De Exploit-db.com")+" ####"
print "   # "+Rojo("Por Isseu")+" ############"
print "   ################# "+Verde("V1.0")+" #"
print ""
while True:
input = raw_input(Verde("[?]")+" Ingrese Nombre de la Aplicacion a Buscar ("+Rojo("Quit")+" para salir)\n-->");
sisalir(input);
print Verde("[+]")+" Buscando "+input+" en ExploitDB [...]";
ExploitDB(input)


#83
yo diria que es cualquier cosa o comunicaciones terroristas :)
#84
Scripting / Re: python o Perl ??
20 Abril 2010, 00:52 AM
Perl es un lenguaje muy entretenido por su facilidad para sus sockets, expresiones regulares, creacion exploits. Pero python es un lenguaje más matematico (muy potente en ese sentido), y un poco más nuevo perl-->1989 python-->1991, con mucho mejor uso de POO que perl. Python es un poco me costo un poco más aprenderlo ya que tiene miles de trucos poderosisimos (como tambien perl)
Perl es un poco más hacker :)
Python más matematico
Ambos son excelente! (creo que no reespondi tu duda pero lo dejo para que lo pienses)

Yo personalmente uso más perl pero porque llevo más tiempo usandolo que python y todo depende del proposito para el cual usarlos. Pero te diria que eligieras python por lo siguente --> http://mundogeek.net/archivos/2004/06/24/de-camellos-serpientes-y-joyas-perl-vs-python-vs-ruby/
#85
Scripting / Funcion Ip Publica [Perl]
19 Abril 2010, 03:55 AM
Una funcion que hice para probar un poco de "regex", usando la web http://ip.interchile.com/ devuelve tu ip publica como string,
Código (perl) [Seleccionar]
#!/usr/bin/perl
$ip=GetPublicIp();
if($ip ne "Error"){
print $ip;
}else{
print "Error";
}

sub GetPublicIp{
#Funcion Por Isseu
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
$URL="http://ip.interchile.com/";
$browser = LWP::UserAgent->new();
$browser->timeout(5);
my $request = HTTP::Request->new(GET => $URL);
my $response = $browser->request($request);
if(!$response->is_error()){
$data=$response->content();
$data=substr($data,630,50);
if($data=~/<font size=7>(.+\..+\..+\..+)<\/font>/){
    return $1;
    }else{
print "Error";
}


}else{
print "Error";
}
}



#86
te tiene que quedar un codigo algo asi
rojo --> injection
<input class="input" name="email" size="30" maxlength="120" value="xxxxxxxxxxxxx\" =alert(String.fromCharCode(88,83,83)); a="" type="text">
la gracia esta en el "a",
#87
No se si te entendi pero hay va
yo hice algo parecido en otro codigo (en c#, pero se me perdio)
en c++ seria algo asi:
diccionario: abcdefg
1.- tenemos la palabra (char[]) a "sumar" --> dfg
2.- cada caracter se transforma a un array int[] de acuerdo al lugar en el diccionario (parte en 0)--> array int[] {3,5,6}
3.- sumamos al ultimo --> array int [] {3,5,7}
4.- revismos que ninguno sea mayor a 6, como 7>6, se cambia a 0 y proximo se le suma 1 --> array int[] {3,6,0}
5.- Revisamos nuevamente --> no hay mayores a 6
6.- se pasa array int a char[] --> 3=d 6=g 0=a --> dga = dfg+1
#88
se mantienen en el servidor
lo unico que puede cambiar el usuario seria este identificador de sessin pero no lo que esta tiene en su interior
muy bien por preguntar
  :laugh:
#89
Gracias xD
Pero ya me canse de escribir en el :)
#90
en realidad ¿como no existe un proyecto mayor?
no es tan complejo... caro...