Hola buenas.
Aqui les dejo esto que he hecho esta mañana, esta funcionando bien.
Quizas a algunos les sea util :P

Código: Seleccionar todo

<?php
//Implementacion API VirusTotal. Comprobar si un archivo ha sido subido a VT por hash.
//Implementado por Rudeboy1991
//Credits: Metal_Kingdom por su idea original de su tool VT_CHECKER
//Uso: vtcheck.php?ID=1&USUARIO=Rudeboy1991&[email protected]
//ID: Para saber de que usuario coger las MD5
//Usuario y Email: para el mail mandado.

//Podeis enlazar tu programa vb6 (o cualquier otro lenguage) con una base de datos para ir guardando las MD5 creadas
//Y cada vez que se abra la aplicacion que mande una peticion a este script. Mediante el uso indicado arriba.

error_reporting(0); 
$db_host = ''; //El Host de tu Base de Datos.
$db_user = ''; //Usuario de tu Base de Datos.
$db_pass = ''; //Contraseña de tu Base de Datos.
$db_database = ''; //Base de Datos que Usaremos.

$link = mysql_connect($db_host,$db_user,$db_pass) or die('No se puede establecer la conexion, intentelo de nuevo.'); //Hacemos la conexion, si falla manda el mensaje.
mysql_select_db($db_database,$link);
mysql_query("SET names UTF8");

		$row = mysql_fetch_assoc(mysql_query("SELECT MD51,MD52,MD53,MD54,MD55 FROM TUTABLAMD5 WHERE id=".$_GET["ID"])); //Seleccionamos las columnas en donde tenemos los MD5 desde la Tabla donde se el ID que hemos elegido mediando un GET.
		for ($i=1; $i<=5; $i++) //For, muy practico para no repetir tanto code.
		{
		//resourse = El MD5 a comprobar
		//key = Nuestro API de VT
		$postFields = array_merge(array('resource' => $row["MD5" . $i]), array('key' => 'PONTUAPIVTAQUI'));
		//No creo que haga falta explicar lo que pasa aqui, esta de moda usar API de Scan4you xD, asique sabreis lo que es CURL.
		$ch = curl_init('https://www.virustotal.com/api/' . 'get_file_report.json');
		curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
		curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_VERBOSE, 0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
		curl_setopt($ch, CURLOPT_POST, true);
		curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
		$response = curl_exec($ch);
		curl_close($ch);

		//Dependiendo del Resultado de $response hacemos una cosa u otra.
		
		//Creo que esta claro esto, if, else...
		if ($response == '{"result": 0}' || $response == '{"result": 0, "verbose": "Invalid file hash provided"}') 
			{echo "MD5" . $i . ": El Hash no se ha encontrado.";}
		else
			{
			echo "MD5" . $i . ": El Hash del se ha encontrado en la base de datos de VirusTotal.";
			
				$username = $_GET["USUARIO"];
				$emailusuario = $_GET["EMAIL"];
				$emailcopia = 'TU EMAIL';
				$emailde = "DE DONDE QUIERES QUE SE ENVIE";
				$subject = "MD5 Detectada en VirusTotal.";
				mail($emailcopia, $subject, 'Estimado, '.$username.' hemos detectado una actividad sospechosa que no cumple con los TOS de nuestro servicio en tu cuenta.', 'From: '.$emailde.'');
				mail($emailusuario, $subject, 'Estimado, '.$username.' hemos detectado una actividad sospechosa que no cumple con los TOS de nuestro servicio en tu cuenta.', 'From: '.$emailde.'');
			} 
echo "</br>";
}		
?>


Un saludo,
Rudeboy1991
Está bien si, si tu file ya esta en VT, entonces haces update con un crypter distinto y así no pierdes remotos ..
Responder

Volver a “Fuentes”