Uma coisa sobre a qual não falamos até agora são os homens no meio, no emulador, e isso pode ser necessário
para você neste momento.
Portanto, você não precisa de um dispositivo para realizar esse curso aqui.
Portanto, talvez você queira saber como realizar essa configuração para um emulador, porque temos algumas
tarefas a realizar em nossa configuração de homem no meio ou em nossos desafios de homem no meio.
Portanto, precisamos saber como fazer isso.
Muito bem.
Está bem.
O motivo pelo qual não falamos sobre isso até agora é que eu realmente não sou um grande fã da configuração.
Portanto, se quiser analisar o aplicativo móvel, pegue seu dispositivo, configure sua conexão de rede por meio do gerenciador
de rede, forneça o HTTP e o DNS automaticamente por meio da conexão compartilhada.
Conecte-o ao seu ponto de acesso e pronto.
Você vê tudo o que o pacote de rede e o smartphone estão fazendo.
Em relação ao emulador.
Temos que confiar no software, o que significa que temos que confiar em determinados sistemas operacionais relacionados
à virtualização, e isso pode causar problemas.
Portanto, sim, não sou um grande fã da configuração.
No entanto, você pode realizar todos os desafios deste curso aqui com o emulador.
Além disso, você não precisa comprar todos os dispositivos.
Você pode fazer tudo isso no emulador.
Não há absolutamente nenhum problema.
E também em relação ao teste de aplicativos ferroviários, eu diria que 90% de todos os aplicativos podem ser
analisados com o emulador, mas se você estiver analisando coisas de IOT com Bluetooth, NFC ou talvez outros protocolos estranhos,
eu realmente recomendo usar um OC de dispositivo real.
Mas, por enquanto, digamos que nenhum dispositivo real esteja disponível.
Nós o jogamos na água.
Tudo bem.
Como podemos fazer isso?
Vamos dar uma olhada.
Vamos voltar para o boom, boom, boom, e vamos resolver isso.
Bem, aqui estamos de volta à VM do Ubuntu.
E a primeira coisa que eu gostaria de mostrar é o bug do emulador, que ainda está em vigor no momento.
Portanto, já descrevi isso nas ferramentas.
E se você já ouviu isso duas vezes, desculpe-me, mas se as pessoas forem direto para esse homem
no meio do tópico aqui, sem passar pela parte da instalação, então isso pode pegá-lo agora mesmo.
Certo, então qual é o problema?
Se quisermos iniciar nosso emulador, temos duas opções.
A primeira é por meio do Android Studio.
Então, vamos dar uma olhada no que tem sido um sólido Android studio e, em seguida, no bash studio dot, já que essa é a abordagem que normalmente não adoto,
pois agora estamos iniciando o Android studio como outra ferramenta que pode ser iniciada
diretamente.
Então, por que seguir esse caminho?
No entanto, no Android Studio, a saída de depuração é um pouco melhor do que no terminal apenas
para o emulador.
Portanto, às vezes é útil configurar se você não estiver selecionando nenhum projeto.
Temos o AVD Manager, que é o gerenciador de dispositivos virtuais do Android, e estou usando
agora um Nexus six up 30, portanto, Android 11, IP 30 e aqui podemos ver a arquitetura da CPU x 86.
O Android Studio também tem a capacidade de emular dispositivos ARM.
A ARM é a arquitetura de CPU para esses smartphones, esses smartphones nativos daqui, não esses falsos que
estamos usando agora.
Portanto, este é um pouco mais lento.
Não é um pouco, é muito mais lento porque precisa ser emulado em uma arquitetura x86.
Se estivermos emulando um x86 dentro de um X 86, isso será muito mais rápido.
Mas também podemos ter problemas em determinados aplicativos, que foram projetados exclusivamente para funcionar
em dispositivos reais.
Se quiser saber mais sobre esse assunto, fiz um vídeo completo sobre a diferença
entre x86 e ARM, por que estamos tendo isso e como tudo isso funciona no momento.
Está bem.
Tudo bem.
Podemos ver que o smartphone está exigindo 8. 1 gigabyte de espaço em disco e podemos simplesmente iniciar esse emulador
por meio deste botão aqui.
Recomendo enfaticamente que você use um dispositivo Nexus 6, pois se estiver usando um dispositivo Pixel, ele será muito mais
rápido do que o Nexus 6 e também exigirá mais recursos.
Portanto, no emulador, não queremos ter um dispositivo potente, queremos ter um dispositivo de nível
realmente baixo que funcione como um smartphone e não tenha todos esses recursos sofisticados, porque
esses recursos sofisticados exigem recursos do nosso sistema e esse smartphone seria terrivelmente lento.
Está bem.
Portanto, é assim que podemos iniciar esse emulador por meio do Android Studio.
Mas, como já foi mencionado, há uma maneira mais fácil, e a maneira mais fácil é usar o emulador.
Portanto, se você digitar emulator, estaremos usando o emulador do Android, que vem com o SDK.
Portanto, se estivermos executando qual emulador aqui, teremos agora o binário que está sendo executado e esse binário
também foi adicionado à nossa variável de caminho.
Portanto, esse diretório é o diretório de ferramentas.
Vejamos.
É isso aí.
Isso significa que, se você estiver executando o emulador, o terminal estará procurando em todos esses
diretórios por um binário do emulador e o executará.
OC Ok, então qual é o problema?
Bem, vamos tentar iniciar nosso emulador e temos duas opções: com o nome ou traço ABD com o com
o nome novamente.
Portanto, não tenho certeza de qual é o nome do meu emulador.
Então, estou usando a lista de evds do emulador e aqui está.
E agora podemos usar a borda do emulador e, em seguida, o nome e agora estamos obtendo o programa do mecanismo do emulador
ausente para a CPU x86.
E o problema é que o binário do emulador dentro do Android SDK foi colocado em ferramentas que estão desatualizadas.
Portanto, agora temos dois binários de emulador, um dentro das ferramentas e outro dentro do emulador.
E se tivermos ambos em nossa variável de caminho, não saberemos qual deles será escolhido.
E sabe de uma coisa?
É sempre o errado.
Portanto, o que precisamos fazer é nos livrar desse binário do emulador e incluí-lo
aqui, o diretório do emulador no caminho, e pronto.
Então, talvez devêssemos fazer isso de forma um pouco gráfica para que você possa ver o que está acontecendo, pois não
é tão fácil acompanhar em um terminal.
Está bem.
Portanto, aqui vamos para as ferramentas do binário do emulador.
Podemos excluir isso agora mesmo, porque essa é a versão desatualizada que não deve mais ser usada.
Mas não sou fã disso, então vamos renomear isso se estivermos renomeando para emulator dot back e também
para este, então, se você estiver usando o emulator agora, ah, sim, ele funcionará porque foi adicionado ao caminho agora.
Bem, não importa se você renomear essa ferramenta para back.
No momento, temos apenas um binário do emulador em nossa variável de caminho, e ele está dentro do emulador.
Portanto, a estrutura de arquivos foi alterada nos últimos dois anos no sistema Android e ainda assim ela
é bagunçada.
Portanto, este é o binário do emulador que precisamos executar e está localizado no emulador Android SDK.
Eles têm nomes idênticos e são ambos ferramentas.
Além disso, esse diretório do emulador precisa ser incluído na variável path.
Se estivermos descartando o diretório de substitutos, perderemos o acesso ao Android, faremos o monitoramento do cartão SD
e coisas desse tipo.
Talvez esses binários também estejam desatualizados, mas, por enquanto, o único problema que estamos tendo são dois binários em versões
diferentes com exatamente o mesmo nome.
Portanto, vamos nos livrar de um deles e depois vamos embora.
Muito bem, agora vamos ver.
Sim.
Se agora você simplesmente executar o mesmo comando mais uma vez, ele deverá funcionar, pois estará
indo para a variável de caminho ou, sim, para a variável de caminho, ele a procura e vê, ok, no emulador SDK, tenho um binário
de emulador, estou usando este.
Vamos verificar isso.
Qual emulador é a prova definitiva de que eu sou.
Sim.
Um pouco bobo e cometi esse erro aqui, mas isso não importa.
Ele ainda pode ser executado.
Portanto, com um emulador de SDK do Android, agora é o binário do emulador e, antes disso, estava dentro do emulador de ferramentas do SDK, porque
esse foi o primeiro a ser encontrado.
Gostaria de consertar isso rapidamente e depois vamos para a configuração do homem no meio.
Sim.
E esse erro me custou um bom tempo para resolver e, portanto, eu gostaria de incluí-lo
em um intervalo de três minutos aqui para que você não precise procurar 15 para resolver isso agora.
Está bem.
Agora, finalmente, podemos iniciar nosso emulador.
Vamos lá.
Vamos fazer isso.
Sim.
Agora podemos ver a versão 33 do emulador.
E aqui recebemos o próximo aviso, neste caso, a execução em uma máquina dentro de outra máquina
é algo que também descobrimos ou falamos no caminho de instalação.
Não é uma boa ideia.
Se você estiver usando dispositivos mais novos e dispositivos pixel, a experiência do usuário será absolutamente horrível
nesse caso.
No momento, não são necessários muitos recursos.
Portanto, não estou usando um PowerPC completo.
Estou usando oito gigabytes de RAM e acho que dois núcleos de CPU.
Isso é bastante comum hoje em dia, portanto, também deve funcionar sem problemas.
Recomendo enfaticamente que você faça tudo isso em seu sistema host para começar a trabalhar, e sim, em um laptop separado
para realizar seus testes de penetração, engenharia reversa e análise.
Portanto, com essa configuração na área de trabalho do host, você pode executar esse emulador com bastante rapidez.
Isso é incrível.
Portanto, não há nenhum milésimo de segundo de atraso no momento.
Pode ser que tenhamos um pouco, mas ainda está tudo certo.
E isso é algo que eu gostaria de provar aqui.
Está bem.
Então, vamos começar com esse.
Sim.
E B, ainda há esse aplicativo antigo que o banco inseguro abriu.
Ok, então vamos encerrar o assunto.
Tudo bem.
Então, agora temos esse dispositivo e esse dispositivo tem um acesso wi-fi, talvez?
Não, agora não.
Mas ele também afirma ter acesso à rede móvel.
E, é claro, essas redes são virtualizadas.
Portanto, esse emulador não tem um cartão SIM com um número de telefone.
E também não tem acesso físico a Wi-Fi.
Portanto, essas conexões de rede são apenas virtualizadas e estão sendo obtidas desse sistema
aqui, de onde o emulador é iniciado.
Portanto, se você também quiser encaminhar o acesso à Internet para esse dispositivo, precisamos garantir que
o sistema host tenha acesso à Internet.
Portanto, eu o habilitei.
Portanto, vamos fazer a conexão.
Está bem?
Agora temos acesso à Internet em nossa máquina virtual e veremos o acesso à Internet aparecer em
um ou dois minutos.
Também em nosso smartphone neste momento, acho que se você estiver abrindo o navegador da Web, ele já deverá estar
lá.
Então vamos ver.
Oh, isso é bom.
Não há navegador da Web nesse dispositivo.
Isso é interessante.
Bem, então tudo bem.
Vamos escolher o webview para que as pessoas simplesmente confiem em um aplicativo que funciona no webview.
Portanto, estamos usando um pequeno navegador no aplicativo no momento.
Está bem.
Vejamos, http example dot org.
Está bem.
Sim, podemos ver que está funcionando.
Portanto, não precisamos de um navegador ali, porque todo o tráfego de rede que desejamos que seja intermediário
diz respeito aos nossos aplicativos móveis.
Portanto, já estamos absolutamente satisfeitos com esse dispositivo de baixo nível no momento.
Está bem.
Portanto, ao realizar essa configuração de homem no meio no momento, temos, em geral, duas opções
relacionadas ao emulador.
Um deles é algo que realmente não posso recomendar, mas ainda assim quero mostrar a você por que e como.
Portanto, a primeira, que é sempre mencionada, é usar as configurações de Wi-Fi como proxy, se entrarmos nas configurações.
E depois rede e Internet.
E WiFi.
Assim, você pode ver que há um pouco de atraso, mas acho que ainda é possível trabalhar com esse dispositivo.
Então, temos que esperar até que nossos aplicativos wifi emulados.
A propósito, estamos tendo conexão com a Internet, mas ainda assim este X neste momento.
Esse é um exemplo perfeito, pois o emulador agora está usando a conexão móvel virtualizada em vez da conexão WiFi virtualizada,
o que significa que, se estivermos inserindo aqui nessas configurações o nosso proxy do burp
suite, isso não fará nada neste momento.
Deixe-me mostrar isso para você.
Então, vamos começar nossa suíte de arrotos.
Nós a temos.
E agora não precisamos fazer uma configuração complexa com regras de tabela IP e coisas
do gênero, porque apenas inserimos os valores do pacote burp como proxy neste aqui.
Portanto, essa é a quantidade de homens nas configurações intermediárias que estão sendo referenciadas agora.
E isso não é uma boa ideia.
E você verá agora por quê.
Portanto, vamos escolher o projeto temporário para usar os padrões do burp.
Está bem.
E depois dentro de um proxy.
Opções.
Portanto, se você clicar em editar.
Endereço IP específico ou endereço específico, podemos ver que não estamos tendo nossa interface hour 1040 201 ativada no momento
porque não estamos tendo uma interface de rede física à qual queremos nos conectar no momento.
Portanto, a maneira mais fácil é usar todos eles.
Também podemos simplesmente selecionar esta aqui, pois é a interface da nossa conta de rede da VM do Ubuntu.
Portanto, este aqui.
O smartphone pode se conectar a essa interface e podemos encaminhar o tráfego dessa interface para
o mundo real.
Portanto, você pode selecionar tudo ou apenas sua interface aqui.
Com relação ao tratamento de solicitações, temos que aplicar o Invisible Proxy, e agora estamos prontos para começar.
Agora, queremos inseri-lo como um proxy.
Portanto, temos que ir até esse lápis.
As opções de Wi-Fi e TAB também têm algumas opções confusas: tratadas como com medição, tratadas como sem medição.
Portanto, sim, já temos decisões e decisões relacionadas à rede.
O trânsito é sempre ruim porque, se fizermos dessa forma, podemos perder a outra parte e vice-versa.
Certo.
Está bem.
Digamos que o tratemos como não medido e agora como proxy.
Muitos.
Bem.
E agora vamos lá.
O nome do host é http 172 16 214 129.
É exatamente este aqui.
Sim.
E agora a porta é 80.
80.
Não queremos contornar e, sim, o HCP.
Então, por que não podemos salvá-lo agora mesmo?
Oh, temos que nos livrar desse.
Está bem.
Agora podemos salvar isso.
E agora vamos ver.
Ok, vamos tentar.
Nossos arrotos, podemos fazer no meio dessa solicitação porque ainda estamos falando de HTTP.
Não deve haver nenhum problema com relação a esse mundo.
Para ser justo, isso pode já ter sido armazenado em cache.
Portanto, não estamos usando o ponto org.
Estamos usando o ponto com.
Está bem.
Portanto, não vejo nada aqui dentro no momento.
E podemos ver que o smartphone está navegando.
Talvez eu tenha feito uma configuração errada, portanto, vamos voltar atrás.
Está bem.
E vamos passar para a outra parte.
Portanto, em vez de tratá-lo como não medido, vamos selecionar medido.
Vamos fazer isso mais uma vez.
E agora podemos ver que perdemos a parte do wi-fi.
Então vamos ver.
H GDP example dot com.
Nada aqui.
Vamos fazer isso.
Por exemplo, ponto org.
Ainda não há nada aqui.
Vamos fazer isso pelo Google. com.
Mesmo que seja http, devemos ver alguns erros.
Nada dentro da suíte para arrotos.
Certo, então acho que não está funcionando dessa forma.
Por último, mas não menos importante, temos essa opção automática.
Mas acho que conseguimos chegar a esse ponto fazendo isso dessa maneira.
Não é realmente confiável buscar nada.
Além disso, o problema é que alguns aplicativos podem detectar configurações de proxy como essa.
Eles podem dizer que, se o smartphone estiver usando determinadas configurações de proxy, não faça essa solicitação.
Portanto, não o utilize dessa forma.
Vamos nos livrar dessa agora mesmo.
Então, bem, não queremos fazer isso.
Tudo bem.
Portanto, vimos que ele alterna entre wi-fi e conexão móvel virtualizada, e vice-versa.
E às vezes funciona.
Às vezes, você perde algumas coisas.
Não é uma boa ideia.
O que mais podemos fazer?
A opção mais fácil é usar o proxy do sistema global para todo esse dispositivo, e podemos encontrá-lo
nos três pontos.
Então, aqui podemos ver se selecionamos a configuração de proxy do menu.
E selecionar nossos criminosos.
Em seguida, podemos clicar em aplicar.
E agora estamos tendo uma opção mais global.
Eu não confiaria nisso.
Essa configuração "man in the middle" agora está obtendo cada pacote de rede.
Portanto, no que diz respeito ao UDP ou a outras coisas, talvez ainda seja complicado, mas agora já podemos ver que esse dispositivo está fazendo
algumas solicitações.
Portanto, essas solicitações estão sendo encaminhadas para o pacote burp.
Portanto, ele buscará pelo menos todos os pacotes básicos de rede, o que é justo o suficiente para 90% de todos os aplicativos.
Tudo bem.
Mas, neste curso, você não terá absolutamente nenhuma experiência ruim ou não perderá nada se estiver realizando o curso.
Dessa forma, lembre-se de que, em aplicativos do mundo real, especialmente em aplicativos de IOT, use
um dispositivo real como este aqui.
Muito bem.
Ok, legal.
Portanto, agora podemos ver que isso é tudo o que precisamos fazer.
Esqueça a primeira parte que você viu.
Por que é ruim agora.
Ele está alternando entre esses dois tipos de conexão.
Mas não nos importamos, pois estamos obtendo todo o tráfego da rede.
Talvez não todo, mas a maior parte do tráfego de rede.
Sim, por meio de nossa velocidade de arroto.
Tudo bem.
A única coisa que precisamos fazer é abrir a visualização da Web mais uma vez.
Então, vamos para uma página HTTP.
E vamos também manter esse histórico aqui.
Tudo bem.
Está bem.
Então, agora aqui, por exemplo, vejamos, http example dot org.
Sim.
Agora temos esta página de exemplo dot org.
Perfeito.
Portanto, podemos ver todo o tráfego de rede para esse aplicativo agora mesmo com nossa taxa de propósito OC.
Essa é a melhor configuração no momento.
Legal.
O único problema que estamos tendo no momento é com relação ao https example dot com, caso ele tenha sido armazenado em cache.
Oh, vamos ver o que está acontecendo.
Vamos liberar esse dinheiro.
Quero dizer, isso pode ser feito facilmente aqui.
E sim, estamos recebendo algumas setas de painel aqui.
Então, digamos que haja um erro e ele seja reivindicado.
Esse examinador. O certificado de fotógrafo recebido pode ser desconhecido.
Sim, parece que sim.
Sim.
Portanto, o certificado é desconhecido.
Precisamos instalar a certidão de nascimento também neste dispositivo, agora mesmo, neste aqui.
Isso é importante?
Absolutamente não.
Portanto, o que precisamos fazer é acessar as opções de proxy, importar e exportar e ver um certificado.
Selecionamos o certificado a partir de quê?
Em seguida, selecionamos nosso diretório inicial e fornecemos um nome como emulador brb dot CRT desta vez.
Portanto, não o CRT.
Está bem.
E então estamos usando o ADB push no.
O que foi.
Eu não sei mais.
Correto.
O emulador de CRT funciona dessa forma.
O emulador ADB push funciona no sdcard e agora só precisamos instalá-lo.
Portanto, se voltarmos atrás, talvez possamos fechar esses aplicativos.
Assim, não precisamos nos preocupar com o armazenamento em cache.
Portanto, configurações.
E então vamos ver.
Segurança.
E a criptografia e as credenciais.
Instalar um certificado.
Ver um certificado.
De qualquer forma, com estilo.
OC o cartão SD está sendo carregado.
E vamos ver o que você tem.
Ok, então nessas três linhas.
E temos que selecionar.
Sim.
Se você selecionar um cartão SD, veremos apenas esses diretórios, não esses arquivos.
Portanto, precisamos voltar ao Android SDK, compilar para x86 e agora também teremos esses arquivos.
E aqui podemos ver que obtivemos um emulador por CRT.
Então, clicamos nisso e, em seguida, deve haver uma mensagem de sucesso, mesmo que ela seja um pouco parecida
com a atual.
Em vez disso, consulte um certificado.
Isso é tudo o que precisamos fazer.
Precisamos entrar nessas configurações.
Aplicamos nosso conjunto de arrotos dentro do conjunto de arrotos.
Precisamos selecionar as configurações de proxy nessa interface.
88 invisível dentro do certificado e vamos em frente.
Sério?
Vamos resolver isso.
Portanto, no histórico do HTTP.
Sim, quero dizer, não, isso ainda é o Google.
Interessante.
Então, vejamos, estamos abrindo esse incrível teste de visualização da Web mais uma vez.
Está bem.
E agora queremos ir para um site HTTPS, então vamos abrir.
HTTP como example dot com.
E, perfeitamente, podemos ver o exemplo do hpe ponto com, aqui está o pacote de rede e aqui podemos ver que está funcionando.
Portanto, a certidão de nascimento é confiável.
Muito bem, é assim que podemos realizar uma configuração do tipo "man in the middle" em um emulador.
Sim, é muito mais fácil, mas estamos perdendo um pouco dos pacotes relacionados a protocolos estranhos ou incomuns.
Muito bem.
Perfeito.
Divirta-se com isso e espero vê-lo no próximo vídeo.