- Dado un APK decompilarlo para recuperar el código java original
- Analizar cadenas de textos en el código java
- Obtener las URLs a las que se conecta el software
- Extraer el fichero Manifest y los permisos requeridos por el APK
<html>
<head>
</head>
<body>
<?php
//******** GLOBAL VARIABLES
$rutaTemp="";
//******** FUNCTIONS
function rfile($ruta)
{
$extensions=array("png","jpg","jpeg","bmp","tiff","gif");
global $rutaTemp;
if (is_dir($ruta))
{
if ($aux = opendir($ruta))
{
while (($archivo = readdir($aux)) !== false)
{
if ($archivo!="." && $archivo!="..")
{
$ruta_completa = $ruta . '/' . $archivo;
if (is_dir($ruta_completa))
{
$rutaTemp=$rutaTemp.$ruta_completa . "/";
rfile($ruta_completa . "/");
}
else
{
foreach($extensions as $extension)
{
if(strpos($archivo, $extension)!==false)
echo '<br /><img src="' . $rutaTemp."/".$archivo . '" style="width:100px"/><br />';
}
}
}
}
$rutaTemp="";
closedir($aux);
}
}
}
?>
<h1>HTTP/S</h1>
<textarea cols="100" rows="25">
<?php
//******** APK PARA ANALIZAR
$bin='facebook';
$ext='.apk';
//******** COMANDOS BASH
$com1='mkdir -p android';
$com2='d2j-dex2jar '.$bin.$ext.' --force ';
$com3='java -jar jd-core.jar '.$bin.'-dex2jar.jar android/apk ';
$com4='find android/apk -type f -print0 | xargs -0 grep -1 "https:"';
$com5='find android/apk -type f -print0 | xargs -0 grep -1 "http:"';
$com6='apktool d -f '.getcwd().'/'.$bin.$ext.' '.getcwd().'/android/manifest';
$commands=array($com1,$com2,$com3,$com4,$com5,$com6);
foreach($commands as $com)
{
$output=array();
exec($com, $output);
foreach($output as $valor)
{
echo $valor;
}
}
//******** LECTURA ARCHIVO MANIFEST
$a = getcwd().'/android/manifest/AndroidManifest.xml';
$fp = fopen($a,'r');
$text = fread($fp, filesize($a));
?>
</textarea>
<h1>MANIFEST</h1>
<textarea cols="100" rows="25">
<?php echo $text; ?>
</textarea>
<h1>IMAGES</h1>
<?php rfile("./"); ?>
</body>
</html>
Lo que os mostrará por pantalla lo siguiente:
0 comentarios:
Publicar un comentario