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