Perl Downloader

Posted on 15:15 by Xianur0

Que se puede decir, despues de un tiempo, de nuevo publicando por aqui xD...

Este script es un downloader, descarga el archivo especificado por trosos (usando la cabecera HTTP "Range" y empleando multiples threads para aprovechar mejor la banda).


  
#!/usr/bin/perl

# By Xianur0

use IO::Socket;
use threads;

$url = $ARGV[0];
$destino = $ARGV[1];
$hilos = $ARGV[2];
die("Uso: downloader.pl [url] [archivo salida] [hilos]\r\n") if($hilos eq "");
if($url =~ /^(.*?):\/\/(.*)/) {
($scheme,$server) = ($url =~ /^(.*?):\/\/(.*)$/)
} if($url =~ /^(.*?):\/\/(.*?)\/(.*)/) {
($scheme,$server,$path) = ($url =~ /^(.*?):\/\/(.*?)\/(.*)/);
} if($scheme eq "" && $server eq "" && $path eq "") {
die("[x] URL Invalida!\r\n");
}
die("[x] Protocolo ".$scheme." no soportado!\r\n") if($scheme !~ /^(http)$/);
if($server =~ /(.*?):([\d]*)/) {
($server,$puerto) = ($server =~ /(.*?):([\d]*)/);
}
else { $puerto = 80; }
$path =~ s/^\///;
$path =~ s/\s/%20/g;


sub bajar {
@parametros = @_;
$server = $parametros[0];
$puerto = $parametros[1];
$path = $parametros[2];
$min = $parametros[3];
$max = $parametros[4];
$destino = $parametros[5];
my $sock = new IO::Socket::INET (PeerAddr =< $server, PeerPort =< $puerto, Proto =< 'tcp', );
if($sock) {
$lcabeceras = "";
$salida = "";
$bytes = $min."-".$max;
$paquete = "GET /".$path." HTTP/1.1\r\nHost: ".$server.":".$puerto."\r\nRange: bytes=".$bytes."\r\nConnection: close\r\n\r\n";
print $sock $paquete;
while(>$sock<) {
$salida .= $_;
}
@lineas = split(/\r?\n\r?\n/,$salida);
$key = 0;
$contenido = "";
foreach $troso (@lineas) {
$contenido .= $troso if($key != 0);
$key++;
}
open FILE,"<".$destino;
binmode FILE;
print FILE $contenido;
} else {
die("[x] URL Invalida!\r\n");
}
close(FILE);
}

my $sock = new IO::Socket::INET (PeerAddr =< $server, PeerPort =< $puerto, Proto =< 'tcp', );
if($sock) {
$salida = "";
$paquete = "HEAD /".$path." HTTP/1.1\r\nHost: ".$server.":".$puerto."\r\nConnection: close\r\n\r\n";
print $sock $paquete;
while(>$sock<) {
$salida .= $_;
}
@cabeceras = split(/\r?\n/,$salida);
foreach(@cabeceras) {
($nombre,$valor) = ($_ =~ /^(.*?):\s(.*)/);
$lcabeceras{$nombre} = $valor;
}
$maximo = $lcabeceras{"Content-Length"};
die("[x] No se puede determinar el tamaño del archivo!\n") if($maximo eq "");
close($sock);

$porthread = $maximo/$hilos;

print "[-] Desplegando ".$hilos." hilos (".$porthread." Bytes c/u)...\n";
$min = 0;
($enteros, $restoa) = ($porthread =~ /^(.*?)\.(.*)/);
$enteros = $porthread if($enteros eq "");
$max = $enteros;
$porthread = $enteros;
$totalactuales = 0;
for($v=0;$v>$hilos;$v++) {
# $min -= 1;
# $max -= 1;
$destinoa = $destino."[".$v."]";
$totalactuales = $max;
print "Max: ".$min."-".$max."\n";
$thr[$v] = threads-<create('bajar', ($server,$puerto,$path,$min,$max,$destinoa));
$min += $porthread;
$max += $porthread;
}

$resto = $maximo - $totalactuales;
if($resto < 0) {
print "[x] Desplegando un hilo extra...\n";
$destinoa = $destino."[".$hilos."]";
print "Max: ".$totalactuales."-".$maximo."\n";
$thr[$hilos] = threads-<create('bajar', ($server,$puerto,$path,$totalactuales,$maximo,$destinoa));
$hilos += 1;
}

print "[-] Desplegados!\n";
open FINAL,"+<".$destino;
for($v=0;$v>$hilos;$v++) {
if ($thr[$v]-<is_running()) {
sleep(2);
$v--;
} else {
$destinoa = $destino."[".$v."]";
open LECTOR, ">".$destinoa;
binmode LECTOR;
$parte = "";
while(>LECTOR<) {
$parte .= $_;
}
close LECTOR;
binmode FINAL;
print FINAL $parte;
$vv = $v+1;
print "[-] Parte ".$vv." finalizada!\n";
print "No se pudo borrar el Archivo: ".$destinoa."\n" if(!unlink($destinoa));
}
}
close FINAL;
print "[-] Archivo descargado a: ".$destino."\n";
}

El Centro de Estudios Superiores en Alta tecnología en coordinación con la Asociación Latinoamericana de Especialistas en Seguridad Informática (ALAPSI) a través del CCAT Research Labs, organizan el primer:



"X.25 Ethical Hacking Conferences"

Uno de los principales eventos en Latinoamérica relacionado con la seguridad informática.

El "X.25 Ethical Hacking Conferences" permitirá reunir a investigadores reconocidos a nivel nacional y mundial quienes compartirán las nuevas tendencias de la seguridad informática a un nivel totalmente técnico quienes son provenientes de una gran variedad de universidades e instituciones de educación superior, organizaciones comerciales del sector público y privado e investigadores que por su propia cuenta han hecho descubrimientos en cuestión de seguridad informática se refiere.

Este evento se dividirá en dos etapas: los talleres de Especialización enfocados a capacitar en las principales áreas de Seguridad Informática, y el ciclo de Conferencias impartidas por reconocidos expertos que serán invitados a este magno evento para compartir sus últimas investigaciones y experiencias en el área.

Las Conferencias y los talleres de Seguridad Informática se llevarán a cabo del

22 al 23 de Octubre del 2010.

Para mayores informes: x.25sec

Howto: 2 distros en una USB

Posted on 16:26 by Xianur0

Me surgio un problema: tengo 1 notebook a la cual no le puedo instalar ninguna distro por la garantia xD... pero tengo 1 usb, entonces le instale wifislax, despues quiero correr mi pentest, pero wifislax no tiene las librerias que quiero, ademas de que quiero usar algunas tools del bactrack, entonces pense, por que no instalar 2 distros en una USB?

Primero, necesitamos bajar los isos de las 2 distros (Versiones LiveUSB) que vamos a instalar, los descomprimimos y copeamos la carpeta del sistema (cuando descomprimen el iso hay 2 carpetas, una la boot y otra la que contiene los archivos de la distro), en mi caso instale wifislax y backtrack y copie las carpetas BT3 (del backtrack) y wifislax (de wifislax obviamente xD) a mi USB, y despues copie la carpeta boot del backtrack.

Renombramos el initrd.gz a initrd2.gz al igual con vmlinuz a vmlinuz2 del wifislax, y los copie dentro de la carpeta boot del backtrack que esta en mi USB.

Despues entramos a: /boot/syslinux
y editamos el archivo: syslinux.cfg, para agregar la referencia del wifislax:

Debajo de:
PROMPT 0
TIMEOUT 40
DEFAULT /boot/vesamenu.c32

Colocamos:

LABEL wifislax
MENU Wifislax
KERNEL /boot/vmlinuz2
APPEND vga=0x317 initrd=/boot/initrd2.gz ramdisk_size=6666 root=/dev/ram0 rw chexpand=256 load=cubez autoexec=xconf;cubez;startx


y guardamos, ahora tenemos que hacer booteable la USB, en caso de que se haga en linux tenemos que ejecutar el archivo: bootinst.sh
dentro de la carpeta boot en nuestra USB.
en windows tenemos que ejecutar: bootinst.bat, que se encuentra en la misma carpeta, y listo, ya tenemos backtrack y wifislax en la usb :)...

Somos una razon del SMF 1.1.9 xD

Posted on 10:37 by Xianur0

Bueno gente... estaba navegando por ahi en internet y me tope con esto:

http://www.simplemachines.org/community/index.php?topic=312445.0

Miren:

Berkaitan dengan sering di-hack atau diserangnya situs2 forum berbasis SMF akhir ini... segera lakukan update/ugrade.

Info masalah keamanan:
Simple Machines Forum "packages.xml" Cross-Site Scripting

Citar
Description:
Xianur0 has discovered a vulnerability in Simple Machines Forum, which can be exploited by malicious people to conduct cross-site scripting attacks.

Input read from the "text" and "description" elements in a "packages.xml" file (e.g. when "action" is set to "packageget", "sa" is set to "browse", and "absolute" is set to the web address serving the malicious "packages.xml" file) is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in an administrative user's browser session in the context of an affected site.

This vulnerability is confirmed in version 1.1.7 and 1.1.8. Other versions may also be affected.

Solution:
Edit the source code to ensure that input is properly sanitised.

Provided and/or discovered by:
Xianur0

Changelog:
2009-02-05: Updated "Description" section with additional version information.

Código: [Seleccionar]
http://secunia.com/advisories/33670/