Estação base GSMServiços especiais e inteligência em diferentes países do mundo usam estações base falsas (armadilhas IMSI, os americanos chamam StingRay), que operam no modo passivo ou ativo . No modo passivo, a estação falsa simplesmente analisa o sinal das estações base circundantes. É muito mais interessante quando o dispositivo é colocado no modo ativo. Nesse caso, a armadilha IMSI força os dispositivos clientes celulares ao redor a se conectarem, desconectando-os da estação base do operador (MTS, VimpelCom, etc.). A tarefa é realizada transmitindo um sinal mais poderoso do que as estações vizinhas (para obter mais detalhes sobre a operação de estações base falsas, consulte o artigo "O Admirável Mundo Novo de Simuladores de Células") (Faculdade de Direito de Albany: 11-12. Doi: 10.2139 / ssrn.2440982).Estações base falsas são usadas não apenas por serviços especiais, mas também por outras pessoas. Por exemplo, na última temporada do Sr. Os hackers de robôs instalaram uma femtocell (uma estação de comunicação celular de baixa potência e miniatura) bem no escritório do FBI, tendo a oportunidade de ouvir suas conversas. Nos negócios, os concorrentes podem usar esse dispositivo para ouvir silenciosamente as conversas do outro lado. Na Rússia, Natalya Kasperskaya sugere a instalação de femtocells espiões nos escritórios de empresas comerciais, para que a gerência possa gravar com calma conversas entre funcionários e visitantes.
O dispositivo está conectado a uma estação de celular PRISM falsa : The Beacon Frame. Como parte de um projeto de pesquisa, a estação envia uma notificação sobre a conexão ao telefone do assinante. A infra-estrutura real de serviços especiais funciona sem o envio de notificações.Gadgetssemelhantes são muito populares na era moderna, porque muitas pessoas usam constantemente as comunicações celulares, transmitindo informações confidenciais por esses canais, sem usar a criptografia de ponta a ponta. É muito conveniente identificar pessoas por seus números de telefone.Heróis da série Mr. Robotcoloque a femtocell sob a mesa ao lado do roteador. Obviamente, desta forma, ele não pode funcionar por um longo tempo, porque mais cedo ou mais tarde o dispositivo "extra" será percebido por uma faxineira ou por um agente aleatório que se curvará. Além disso, a femtocélula possui um alcance muito pequeno, portanto, é improvável que seja capaz de interromper o sinal de uma estação base real para dispositivos de assinante nos andares vizinhos. É garantido que funcione, a menos que esteja no mesmo escritório e que sorte.Para corrigir essa desvantagem, um escritório precisa instalar uma estação base mais poderosa. Mas como disfarçar isso? Uma excelente solução foi proposta pelo engenheiro neozelandês Julian Oliver. Ele projetou a estação base disfarçada de impressora de escritório HP .Nas ruas, as estações base se disfarçam de objetos ambientais - árvores ou lanternas .
Estação celular mal disfarçada de palmeira. Marrakech, Marrocos Uma
estação de celular disfarçada de lanterna, por algum motivo, é colocada ao lado de uma lanterna real. Milton Keynes, Reino UnidoA impressora de escritório Hewlett-Packard Laserjet 1320 parece tão natural quanto um poste de luz. Ele não despertará suspeitas. Pelo menos enquanto continuar funcionando corretamente. Para fins de demonstração, no projeto Oliver, a impressora está configurada para imprimir automaticamente metadados sobre chamadas interceptadas e mensagens SMS, juntamente com o texto dessas mensagens.
O autor explicou em detalhes como funciona a estação base falsa. O transceptor SDR programável BladeRF foi colocado no estojo da impressora (este maravilhoso dispositivo foi descrito em Habré). Na foto, é fixado no canto superior direito. O transceptor se conecta à placa miniatura Raspberry Pi 3 (canto inferior esquerdo) e todos os componentes eletrônicos do hacker são conectados à placa-mãe da impressora (a maior placa da foto).
Para energia, é usado um adaptador USB para carro que converte a impressora 21-22 V em 5 V, necessária para o transceptor e a framboesa. Esses adaptadores geralmente são inseridos no isqueiro de um carro (12-24 V) para alimentar eletrônicos portáteis.
O compartimento do cartucho é ligeiramente modificado para encaixar duas antenas omnidirecionais (TX e AX) conectadas por um cabo SMA ao transceptor BladeRF.O autor do trabalho diz que eles escolheram a impressora Hewlett-Packard Laserjet 1320 por vários motivos. Em primeiro lugar, tem uma aparência surpreendentemente discreta - um design completamente sem rosto que não atrai a atenção. Em segundo lugar, as cavidades internas da caixa são ideais para acomodar todos os componentes eletrônicos e cabos. Nenhuma peça sai e não é visível do lado de fora, exceto por um cabo de alimentação padrão. Quando um adaptador USB é conectado a um conector padrão, a Hewlett-Packard Laserjet 1320 funciona normalmente como uma impressora de escritório comum.O Raspberry Pi 3 foi escolhido após tentativas malsucedidas de garantir a operação estável das estações base do controlador de programa YateBTSsob Intel Edison, Beaglebone Black e até o I-MX6 Marsboard. Diferentemente do antigo OpenBTS, o YateBTS é mais exigente no desempenho do processador.O software da estação base falsa na impressora é executado sobre o código YateBTS de código aberto. Para fins de demonstração, vários scripts foram desenvolvidos. Por exemplo, um deles filtra o log, forma um documento PDF e o envia para impressão.#!/bin/bash
readonly FH=/home/pi/yate.log
rm -f $FH
yate 2>&1 -l $FH &
sleep 1
echo "Starting up..."
last=" "
while true;
do
sleep 10
cur=$(cat $FH | grep -A 16 "Sniffed\ 'call.route'" | sed -e "s/param\['//" \
-e "s/'\]//" -e 's/thread.*//' -e 's/time\=[0-9].*//' \
-e 's/\ data=(.*//' -e 's/\ retval=.*//' \
-e 's/\ tmsi.*//' -e 's/ybts/Stealth\ Cell\ Tower/' \
-e 's/Sniffed/Monitored\ =/' -e '/^\s*$/d' \
-e 's/^\s*//' | tail -n 13)
if [ "$cur" != "$last" ]; then
if [ ${#cur} -gt 1 ]; then
echo "New SMS events detected"
if [[ $cur != *imsi* ]]; then
caller=$(echo "$cur" | grep "caller" | awk '{ print $3 }' | sed "s/'//g" \
| tr -cd '[:print:]')
imsi=$(cat /usr/local/etc/yate/tmsidata.conf | grep "$caller" \
| cut -d '=' -f 1)
cur=$(echo "$cur" | sed -e "s/\ called\ .*/imsi\ =\ '$imsi'/" )
fi
event=$(echo -e \\n"$cur" | tr 'a-z' 'A-Z')
echo "printing file..."
echo "$event" > printme
enscript -r --header='SMS EVENT RECORD|%W|%* UTC' -i2cm --margins=10:10:30:10 \
-o printme.ps -f Courier@15/12 printme
ps2pdfwr printme.ps printme.pdf
lp -U pi -o a4 -q 100 -d hp_LaserJet_1320_2 printme.pdf
fi
last=$cur
fi
done
Outro script seleciona aleatoriamente um dos números de telefone que se conectam à estação base, chama e toca o clássico hit de Stevie Wonder, "Acabei de ligar para dizer que te amo" .#!/bin/bash
readonly HOST=127.0.0.1
readonly PORT=5038
readonly DATA=/usr/local/share/yate/sounds/stevie.au
readonly TMSI=/usr/local/etc/yate/tmsidata.conf
readonly CC=49
callone () {
echo "call wave/play/$DATA $mt" | netcat -i 1 -q 1 $HOST $PORT
}
callall() {
for mt in ${UES[@]}
do
echo "calling $mt"
callone
done
}
while true;
do
tmsilen=$(wc -l $TMSI | awk '{ print $1 }')
ues=($(cat $TMSI | grep -A $tmsilen ues | sed 's/\[ues\]//' | cut -d ',' -f 3))
if [ ! -z $ues ]; then
ueslen=${#ues}
RANGE=$ueslen
select=$RANDOM
let "select%=$RANGE"
mt=${ues[$select]}
callone
fi
sleep 30
done
Binários compilados para Raspberry Pi 3: yate_r-pi3_4.4.11-v7_debian-8.0.tar.gz .Boa sorte com seus experimentos!