A quem diga que isso intil e pouco usual; acreditamos que em certas circunstncias pode ser extremamente til. Pense em um cenrio de espionagem industrial onde voc possui a sua disposio a rede wireless da empresa, mas no pode utilizar nenhum computador. Quem poderia suspeitar que voc, fingindo ler seus e-mails no celular, esta na verdade atacando a rede interna? Agora que j propomos um cenrio para a utilizao, vamos ao que realmente interessa. Gostaria de deixar claro que o BackTrack no ser instalado no aparelho, o processo se resume em montar uma imagem criada do BackTrack em um diretrio que voc definiu e executa-lo utilizando o CHROOT. Se voc no entende como o CHROOT funciona recomendo a leitura deste artigo: https://help.ubuntu.com/community/BasicChroot .
Segue a configurao tcnica do aparelho: Processador: Exynos 4 Quad-Core 1.4GHZ Memria Ram: 1GB Memria Interna: 16GB Micro SD: 8GB Tela: HD Super AMOLED 1280x720, 4.8-inch Sistema Operacional: Android 4.0.4 Kernel 3.0.15 Wi-Fi: 802.11 a/b/g/n, WiFi HT40 Obs: necessrio que o aparelho esteja com root.
VNC Viewer: Necessrio para acessar a interface grfica do BackTrack. Voc pode utilizar qualquer cliente de VNC para Android. As imagens deste paper foram feitas utilizando este: https://play.google.com/store/apps/details?id=com.realvnc.viewer.android
Emulador de Terminal: Necessrio para executar e acessar o Shell do BackTrack. Outros emuladores de terminal obviamente podem ser utilizados: https://play.google.com/store/apps/details?id=jackpal.androidterm
BusyBox: Este aplicativo instala e/ou substitui vrios binrios do Android por verses do Linux recompiladas para o processador ARM. Dentre os binrios temos: ash, awk, base64, basename, blkid, bunzip2, bzip2, cal, chat, chattr, chgrp, chmod, chown, chroot, chrt, cksum, clear, comm, cp, crond, crontab, cut, date, dd, depmod, devmem, df, diff, dirname, dmesg, dnsd, dnsdomainname, dos2unix, du, echo, egrep, env, ether-wake, expand, expr, fakeidentd, fdflush, fdformat, fdisk, fgrep, find, fold, free, freeramdisk, fsck, fsync, ftpd, ftpget, ftpput, getopt, grep, groups, gunzip, gzip, hd, hexdump, hostid, hostname, httpd, hwclock, id, ifconfig, ifenslave, inetd, inotifyd, insmod, install, ionice, iostat, ip, ipaddr, ipcalc, iplink, iproute, iprule, iptunnel, kill, killall, killall5, less, ln, logname, losetup, ls, lsattr, lsmod, lsusb, lzop, lzopcat,md5sum, mkdir, mkdosfs, microcom, mke2fs, mkfifo, mkfs.ext2, mkfs.vat, mknod, mkswap, modinfo, modprobe, more, mount, mt, mv, nameif, nanddump, nandwrite, nc,netstat, nice, nmeter, nslookup, ntpd, od, patch, pgrep, pidof, ping, ping6, pkill, pmap, powertop, printenv, printf, ps, pscan, pwd, rdate, rdev, readhead, readlink, realpath, renice, reset, rev, rfkill, rm, rmdir, rmmod, route, run-parts, script, scriptreplay, sed, seq, setkeycodes, setlogcons, setsid, sha1sum, sha256sum, sha512sum, showkey, sleep, smemcap, sort, split, stat, strings, stty, sum, swapoff, swapon, sync, sysctl, tac, tail, tar, tee, telnet, telnetd, test. tftp, tftpd, time, timeout, top, touch, tr, traceroute, traceroute6, tty, ttysize, tunctl, umount, uname, uncompress, unexpand, uniq, unix2dos, unlzop, unzip, uptime, usleep, uudecode, uuencode, vconfig, vi, watch, wc, wget, which, who, whoami, whois, xargs, zcat.
AnTuTu CPU Master: Recomendo este software pois ele permite que voc mantenha a frequncia mxima do seu processador. Ele no faz overclock, apenas permite que voc utilize o mximo de processamento para melhorar o desempenho do BackTrack. https://play.google.com/store/apps/details?id=com.antutu.CpuMaster
Voc precisa de no mnimo 5.1GB de espao livre em sua memria interna se quiser utilizar a imagem do BackTrack atualizada. Recomendo migrar todos os seus dados da memria interna para seu carto de memria. Abaixo um screenshot da memria interna do meu aparelho aps a cpia da imagem do BackTrack.
Obs: No preciso nem dizer que todos os aplicativos sugeridos so facilmente encontrados na BlackMarket, embora seja politicamente correto recomendar a compra pelo Google Play. =D
A verso de kernel do seu android precisa ter suporte a montagem em loop, acredito que todo android acima da verso 2.3.5 j possua este suporte, mas no realizei testes com verses anteriores a 4.0.
6) No celular criei o diretrio ( /data/local/linux ) onde ser montado o arquivo ( backtrack.img ). Aparentemente o diretrio do Android ( /data/local ) no verificado pelo McAfee Mobile Security (BINGO!). Infelizmente os AntiVrus para Android no permitem que voc defina excees para o scan, portanto, comum que seu antivrus detecte ameaas no ponto de montagem do BackTrack.
O script bt.sh:
Este script basicamente responsvel por montar o arquivo backtrack.img e executar o arquivo dc.sh utilizando o chroot. Tive como base um script de chroot desenvolvido pelo Zachary Powell. Segue o cdigo fonte:
################################################ #BackTrack boot script for Android # #Based on a script developed by Zachary Powell # #Changed by Gr1nch for Galaxy S3 # #DcLabs Security Team # ################################################ mount -o remount,rw /dev/block/mmcblk0p5 /system export kit=/sdcard/backtrack export bin=/system/bin export mnt=/data/local/linux export USER=root mkdir $mnt export PATH=$bin:/usr/bin:/usr/local/bin:/usr/sbin:/bin:/usr/local/sbin:/usr/g ames:/opt/metasploit3$PATH export TERM=linux export HOME=/root busybox mknod /dev/block/loop255 b 7 255 losetup /dev/block/loop255 $kit/backtrack.img mount -t ext2 /dev/block/loop255 $mnt mount -t devpts devpts $mnt/dev/pts mount -t proc proc $mnt/proc mount -t sysfs sysfs $mnt/sys busybox mount -o bind /sdcard $mnt/sdcard busybox mount -o bind /mnt/extSdCard $mnt/external_sd busybox sysctl -w net.ipv4.ip_forward=1 echo "nameserver 8.8.8.8" > $mnt/etc/resolv.conf echo "nameserver 8.8.4.4" >> $mnt/etc/resolv.conf echo "127.0.0.1 localhost" > $mnt/etc/hosts echo " " busybox chroot $mnt /root/dc.sh ################## #### SHUTDOWN #### ################## umount $mnt/dev/pts umount $mnt/proc umount $mnt/sdcard umount $mnt/external_sd umount $mnt/sys
O script dc.sh:
Este script fica dentro do diretrio /root da imagem do BackTrack, quando executado, ele verifica se o VNC possui senha, do contrrio ele solicita que voc defina uma senha, alm disso, este script tambm inicia o servio do SSH. Segue minha verso do cdigo fonte:
#!/bin/bash ################## #### POWER ON #### ################## export TERM=linux export HOME=/root chmod a+rw /dev/null chmod a+rw /dev/ptmx chmod 1777 /tmp chmod 1777 /dev/shm chmod +s /usr/bin/sudo chown messagebus.messagebus /var/run/dbus chmod 755 /var/run/dbus echo "shm /dev/shm tmpfs nodev,nosuid,noexec 0 0" > /etc/fstab alias df='df -h /etc/fstab' cd /root rm /tmp/.X* > /dev/null 2>&1 rm /tmp/.X11-unix/X* > /dev/null 2>&1 rm /root/.vnc/localhost* > /dev/null 2>&1 rm /var/run/dbus/pid > /dev/null 2>&1 rm /var/run/reboot-required* > /dev/null 2>&1 dpkg-divert --local --rename --add /sbin/initctl > /dev/null 2>&1 ln -s /bin/true /sbin/initctl > /dev/null 2>&1 dbus-daemon --system --fork > /dev/null 2>&1i if [ ! -f /root/.vnc/passwd ]; then vncpasswd passwd root fi vncserver :0 -geometry 1280x720 -name BackTrack_Android /etc/init.d/ssh start alias df='df -h /etc/fstab' export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:/opt/metasploit/msf3 clear echo " " echo " ____ _____ ____ " echo " | __ )_ _| | ___| " echo " | _ \ | | |___ \ " echo " | |_) || | ___) | " echo " |____/ |_| |____/ " echo " _ _ _ ____ ____ ___ ___ ____ " echo " / \ | \ | | _ \| _ \ / _ \_ _| _ \ " echo " / _ \ | \| | | | | |_) | | | | || | | | " echo " / ___ \| |\ | |_| | _ <| |_| | || |_| | " echo "/_/ \_\_| \_|____/|_| \_ \___/___|____/ " echo " " /bin/bash -i -c su ################### #### POWER OFF #### ################### vncserver -clean -kill :0 /etc/init.d/ssh stop killall -9 Xtightvnc killall -9 dbus-daemon
A hora da diverso:
Agora que j entendemos como a coisa funciona, vamos ao que realmente interessa: No seu android crie o diretrio ( /data/local/linux ) e v at o diretrio ( /sdcard/backtrack ) onde voc colocou os arquivos bt.sh e backtrack.img. Se necessrio edite e execute o script bt.sh: # sh bt.sh Aps definir sua senha para o VNC, ele te entrega o shell do BackTrack para voc comear a se divertir:
Aproveite para redefinir sua senha de root. Obviamente nem todas as ferramentas do BackTrack vo funcionar no Android pois o modo que o processador ARM trata as instrues diferente e algumas ferramentas precisam ser recompiladas para se tornarem compatveis com o Android. No entanto, muitas ferramentas teis so compatveis, principalmente aquelas ferramentas baseadas em Python, Perl e Ruby. Abaixo temos screenshots de algumas ferramentas j testadas: Firefox 15.0.1 com os plugins FireBug, Hackbar, Live HTTP Headers e User Agent Change:
Nmap:
Hydra:
MetaSploit FrameWork:
SQLMAP:
W3AF:
Fast-Track:
Ettercap:
Wireshark:
BurpSuite:
DirBuster:
Consideraes finais:
No espere o mesmo desempenho que voc possui em seu computador, se possvel, evite a utilizao da interface grfica. Para encerrar seu BackTrack simplesmente digite exit no terminal. Voc pode acessar os arquivos do seu backtrack pelo diretrio ( /data/local/linux ).
Para evitar problemas com a verificao agendada do seu antivrus, aps concluir a utilizao, recomendo desmontar este ponto de montagem com os comandos: # umount /data/loca/Linux O projeto do BackTrack possui um repositrio para ARM o que aumenta minhas esperanas de termos um nmero maior de ferramentas compatveis em breve. Abaixo segue alguns repositrios que utilizo no backtrack do meu Android:
deb http://all.repository.backtrack-linux.org revolution main microverse non-free testing deb http://source.repository.backtrack-linux.org revolution main microverse non-free testing deb http://updates.repository.backtrack-linux.org revolution main microverse non-free testing deb http://armel.repository.backtrack-linux.org revolution main microverse non-free testing
Infelizmente, ferramentas importantes como o NESSUS e o NEXPOSE ainda no so compatveis, embora isso no impea que a anlise de vulnerabilidades seja realizada. Para finalizar, vale lembrar que todos seus arquivos salvos no BackTrack esto dentro do arquivo backtrack.img, portanto, aconselho manter sempre um backup deste arquivo.
O link para download do backtrack.img e o script bt.sh esto disponveis neste link:
https://docs.google.com/open?id=0B8FxJ0KnE3nrUWdrRVBVYUZLdjQ
By: Rner Alberto aka Gr1nch Twitter: @Gr1nchDc E-Mail: gr1nch@dclabs.com.br DcLabs Security Team http://www.dclabs.com.br