Investigação Modems NOS FTTH

pedropt2011

Power Member
criei este tópico com o intuito de informar como funcionam "behind the scenes" os modems da nos .
Básicamente para conseguir estas informações tive de fazer uma bridge entre o ONT e o modem para saber que comunicações o modem faz no arranque , para onde e em que portas .

No inicio as ligações são as seguintes :
- DHCP entre o modem e o gateway da NOS (onde é atribuido o ip estático ao modem) - 67 - 68
- Registo dos DNS da NOS no modem - porta 53
- Comunicação de registo do numero de telefone (protocolo SIP) porta : 5060

Em caso de acesso remoto pelo operador ao modem , o mesmo usará a porta 8443 (https-alt) .

Fora destes parametros nada mais aconteçe no equipamento .

Está ocultado informações que identificam o meu equipamento .

image.png



image.png



Como proibir o acesso remoto da NOS ao modem .

Básicamente o que é preciso é ter um RPI com uma página qualquer no servidor html e configurar o apache ou nginx para abrir a porta 8443 .
Depois disto basta configurar o modem da NOS em DMZ para o ip do RPI .

Quando a NOS tentar aceder à porta 8443 do modem irá apanhar a vossa página html do servidor .

No entanto ainda não investiguei que portas por defeito abrem os modems da NOS sem estar em DMZ , mas tambem para fechar essas portas pasta configurar o RPI para no pedido de alguma dessa portas reencaminhar para a 8443 .
Imaginem que nos tem a porta telnet aberta 23 , basta configurar o iptables do RPI :

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 23 -j REDIRECT --to-port 8443

eth0 = interface de rede do RPI

Update

Comunicação SIP entre o modem e o operador .
(Nota: Uma não autorização deveu-se a eu andar constantemente a reeniciar o modem)
sip.png


Entretanto enquanto verificava as ligações efetuadas pelo modem , um artista da Latvia faz um SIP portscan ao modem , o qual não obteve resposta do modem :
sip_scan.png


http://www.tcpiputils.com/browse/ip-address/80.233.134.165

Registo do protocolo jungo (radmin) no operador . (Desta forma o operador sabe que o modem está ativo e o seu ip)
No entanto a comunicação operador -> modem é feita pela porta 8443 como mostrada anteriormente .

jungo_ssl.png
 
Última edição:
não é por esse ''acesso'' que a NOS vê dados de qualidade?

é que para despistar avarias comuns e etc são utilizados os dados de tx rx snr dos modems, acho que bloquear isso é algo pouco positivo.
 
Um dos problemas que os modems dos operadores têm é que deixam as portas abertas , por exemplo , sabendo o username e password do acesso remoto , permite a qualquer um entrar dentro do modem da vitima e fazer as alterações que quiser .
Não tenho a certeza , mas provavelmente o acesso remoto terá permissões para alterar os DNS do modem .
Imaginando que eu tenho o username da NOS e password de acesso remoto , posso entrar em um modem da NOS , alterar o DNS primário e secundário para um servidor meu .
Isto iria implicar o quê :
Que bastava eu clonar com o SET o google.pt , e configurar o meu server de dns (onde a vitima irá pedir o ip do google.pt) e em vez de dizer que o google.pt está em 172.217.16.195 , o meu dns server iria reencaminhar a vitima para 194.xxx.xxx.xxx:80 que seria o meu isco para implantar um backdoor no pc da vitima .
Depois deste ponto eu poderia voltar a entrar no modem da vitima e voltar a por os dns originais da NOS porque já tinha acesso ao pc da vitima .
A vitima nem iria dar conta que tinha sido infetada com um ataque de dns jacking .


Existe um contra ponto que é o fato de haver algum problema no modem com a ligação e o operador necessitar de acessar ao dispositivo , mas quando isso tiver de acontecer basta o usuário desativar o DMZ do router da NOS e o operador volta a ter acesso ao modem .

Se os engenheiros da NOS foram inteligentes quando compilaram os ficheiros dentro da firmware do modem , então eles puseram a password do acesso remoto relacionada com o numero de série do modem , pois desta forma é quase impossivel para o atacante saber essa informação .
Se eles foram burros que nem umas portas , então compilaram uma unica password genérica para o acesso remoto em todos os modems .
Nesta segunda hipotese o atacante poderá entrar em qualquer equipamento NOS online do cliente .

No entanto , eu penso que a chamada de acesso remoto poderá ter um arp request em primeiro lugar ao modem , o que básicamente o programa do operador manda o username e password para um mac address específico (mac address do modem) , o RPI tem outro mac address , mas com o ebtables isso pode ser contornado e reencaminhar o arp request do operador para o RPI .

Agora que estou a mexer nisto , estou a ter umas ideias boas que é capturar a firmware do operador no proximo update que eles fizerem .
a NOS usa a porta tftp para enviar uma nova firmware , mas a comunicação tem um segredo para conseguir entrar , ou seja , um numero de pacotes por segundo , (esta regra iptables está implementada na bridge do ONT ).
Desta forma basta por o RPI em servidor tftp e fazer umas alterações no ebtables e iptables do RPI .
Dar acesso remoto ao operador , e quando o ficheiro for enviado do servidor da NOS , o mesmo será reencaminhado para o servidor do RPI que o guardará .
Apartir deste ponto basta fazer uma descompilação da firmware e saber todos os usernames e passwords usadas pelo operador .

Não será assim tão simples , mas talvez seja algo que eu tente fazer no futuro em relação ao tftp .
 
Última edição:
Para entrares na pagina do modem da NOS tens de tar ligado por cabo, para colocares a aceder à pagina por wifi tens de trocar tambem a pass de acesso à pagina obrigatoriamente se não estou em erro. E trocar o DNS do router nao é coisa muito facil senão for quase impossivel mesmo.
 
"Para entrares na pagina do modem da NOS tens de estar ligado por cabo "
E não estamos todos ?!!
O Wifi nem estou preocupado com isso .
Os dns é coisa que não sei se o acesso remoto tem permissões para o poder fazer .

No entanto , quero clarificar que o meu objetivo primariamente deste post não é hackear o modem mas sim proteger me a mim e ao meu sistema por traz do modem .
O acesso remoto tem acesso a todas as configurações de rede dentro do modem , ou seja eles sabem automaticamente que tipo de router está ligado numa porta específica , e de que marca pelo mac address .
Desta forma é meio caminho andado para um atacante preparar uma entrada no sistema .
Desta forma quero dizer que nem todos os operadores são santos .

Nota : Se por defeito os operadores dessem controlo de super user nos modems aos clientes , então esta conversa nunca iria existir .
Por defeito o cliente deveria ter a opção de desativar o acesso remoto do operador no modem por questões de segurança , e quando fosse necessário então o cliente ativa-va esse username para que o operador vi-se qual era o problema . Mas infelizmente todos os operadores de internet em Portugal tiram essa opção do cliente para poderem andar sempre em cima do assunto quando se lembram , e desta forma existem pessoas como eu que não concordam com essa ideologia .
 
Não, não estamos todos, e ao alguem se ligar por cabo suponho que seja alguem que confies e esteja um pouco sobre o teu controlo.
Todos os routers\modems têm o acesso à pagina interna com a pass de origem até mudares. Logo o risco é o mesmo em todos, com o acesso de superuser o risco seria muito maior! No caso do modem da NOS ainda é melhor, pois ao activares o acesso por wifi tens de trocar obrigatoriamente a pass de entrada na pagina.

Como disse, o acesso remoto, serve para despistar avarias comuns da rede ou quando o cliente necessita de apoio. Isto acontece em todo o planeta.
 
Falamos em contextos diferentes .
Estás a falar em aceder ao menu de acesso do modem via lan , e eu falo via wan .
Via wan o acesso não funciona da mesma forma que na lan em que basta por o username e password .
Via wan é enviado no link de acesso o username e a password , e só depois dá acesso ao resto .

Exemplo na lan :
192.168.1.1 = tens acesso às caixas para por o username e password e depois fazes ok para entrar .

via wan é diferente .
https://109.34.xxx.xxx:8443/(e neste espaço entra o conteudo de username e password)

mas isso é para eu com muita calma e paçiência ver depois , ou por o meu modem à escuta e ligar para o apoio técnico por uma coisa qualquer só para ver como é feito o pedido em https .

No entanto é bom relembrar que o acesso remoto é feito via ssl (ligação segura) , o que significa que a ligação entre o modem e o operador é encriptada . E isto é bom .
 
Ainda há pouco tempo se falou da vulnabilidade do acesso remoto da NOS, assim como da vulnabilidade no router que permitia, entre outras coisas, comprometer os hotspots da FON, e a NOS só a resolveu quando veio a público como se explorava a falha. Por isso, segurança e NOS não combinam e o user fez bem em explicar como fechar essa porta por conta e risco dos clientes que deixam de receber assistência remota.
 
Lembro-me de ler em qualquer forum (penso que foi no aircrack-ng) , que para aceder ao fon free internet sem pass basta com o airodump ver quem está ligado à rede Fon zon , apontar o mac address desse cliente , e por o nosso mac address igual , depois fazer a ligação ao fon zon free .
Nunca experimentei .
Em linux basta o airodump para fazer o sniff ao wifi , e o macchanger para mudar o mac address da nossa pen wireless .

Só clientes sem ser NOS é que se darão a esse trabalho , pois qualquer cliente NOS tem acesso a zon fon caso tenha o seu wifi a partilhar também .
 
Última edição:
se retirarem os acesso remotos da NOS , não perdem os updates de firmware ?

Sim , mas também não se perde nada com isso .

A loucura de andar sempre com os updates em dia não tem lógica e faz lembrar aquelas pessoas que não podem ver um windows mais recente que querem logo instala-lo , isto mesmo sabendo que esse novo windows está 5x mais vulnerável que o anterior .

Antigamente era possivel na firmware de 2012 desativar o acesso remoto através comandos javascript no explorador do windows , permitia que o utilizador desativa-se ou até muda-se as passwords por defeito desse utilizador .
A NOS soube disso e no update seguinte desativou essa opção .

Portanto , se me perguntarem a mim se prefiro ficar sem updates do operador só para desativar o acesso remoto , eu nem hesito e digo que sim e que já deveria ter sido feito à muito tempo .
No entanto esta opção não é para o zé da esquina , pois o cliente comum nem saberá como faze-lo , pois não é só comprar o RPI e liga-lo e está a andar .
É necessário múltiplas configurações na firewall do RPI mesmo para não o deixar vulneravel , e isso é feito em Linux .
E isto sem contar a instalação e preparação do sistema operativo no RPI .
 
Excelente post pedropt2011. Eu que tanto me queixo do abuso que é terceiros terem acesso à minha LAN pessoal, considero que estes acessos externos pelo ISP, que nem podem ser desligados pelo utilizador por via normal, são uma enorme invasão de privacidade.

Pondo isto, e a informação que descobriste, haverá um método relativamente simples de inutilizar o router da NOS e utilizar exclusivamente o nosso router pessoal? Já tinha tentado, fazendo MAC clonning também, mas não consegui ligação, aparentemente por essas configurações adicionais que listaste.

Outra pergunta: Sendo que a NOS utiliza o protocolo SIP para o telefone e visto que é provavelmente o protocolo utilizado na aplicação NOS Telefone para Android, será que consigo utilizar o meu nr de telefone com outras aplicações SIP, por exemplo no PC? Se sim, qual o servidor para onde apontar? E serão as credenciais as mesmas que as utilizadas na aplicação NOS Telefone?
 
Só uma pequena questão que não consegui perceber.

O RPI está ligado na LAN, o tráfego upstream vem na porta WAN (cabo), a WAN tem mais do que um IP (público e privado), o DMZ funciona para o IP público, como é que isso afecta o operador se ele se ligar pelo IP privado do CM?
 
Só uma pequena questão que não consegui perceber.

O RPI está ligado na LAN, o tráfego upstream vem na porta WAN (cabo), a WAN tem mais do que um IP (público e privado), o DMZ funciona para o IP público, como é que isso afecta o operador se ele se ligar pelo IP privado do CM?

O RPI está ligado entre o ONT e a WAN do router.
 
Em DMZ o RPI fica à frente do modem .
Em alternativa existe o port forward no modem , que serve para quem não se importa com a privacidade e acessos do operador ao equipamento .
Nesse caso da PF , é aberta uma porta específica para um ip da lan .
O RPI em https na porta 8443 , o que vai acontecer quando apontarem para o vosso ip (seja o operador ou alguém) , o que vai apanhar é a porta https do RPI .
É bom lembrar que o RPI não é protegido pela firewall do modem por estar numa zona desmilitarizada .
Se quiserem mais privacidade então basta usarem um router vosso na porta 4 do modem em bridge mode .
Eu falei em um RPI pelo seu baixo consumo e aplicação que se lhe pode dár .
No meu caso o meu RPI está a hospedar um pequeno website meu e o meu servidor privado de email .
Eu quando fiz o bridge entre o ont e o modem , reparei que a ligação entre o modem é feita : " numero de telefone@servidorsip da nos" , no entanto existe uma password de acesso no serviço ao qual só pude apurar no meu caso a "hash" da mesma .
Para configurar no pc , é preciso o login sip , a vossa password sip , numero de telefone e servidor da NOS .
Nem o operador da NOS sabe essa password com certeza .
 
Última edição:
Se quiserem mais privacidade então basta usarem um router vosso na porta 4 do modem em bridge mode.
Não percebi bem em que é que isto ajuda. O que tem de especial a porta 4?

Eu quando fiz o bridge entre o ont e o modem , reparei que a ligação entre o modem é feita : " numero de telefone@servidorsip da nos" , no entanto existe uma password de acesso no serviço ao qual só pude apurar no meu caso a "hash" da mesma .
Para configurar no pc , é preciso o login sip , a vossa password sip , numero de telefone e servidor da NOS .
Nem o operador da NOS sabe essa password com certeza .
A aplicação oficial NOS Telefone para Android utiliza certamente o protocolo SIP e é possível gerarmos a nossa password de acesso no site da área de clientes da NOS. Será que conseguimos extrair daqui alguma informação importante?
 
Última edição:
A aplicação oficial NOS Telefone para Android utiliza certamente o protocolo SIP e é possível gerarmos a nossa password de acesso no site da área de clientes da NOS. Será que conseguimos extrair daqui alguma informação importante?

É possível , mas nunca experimentei .

Não percebi bem em que é que isto ajuda. O que tem de especial a porta 4?

A Porta 4 do router zon faz como se tivesses outra ligação independente à net atravéz de um router teu .
 
É possível , mas nunca experimentei .

Os dados pedidos na aplicação são o login (nr de telefone) e a password (gerável no site da NOS). Mas parecem faltar-me outros dados. Coloquei como servidor SIP o IP que descobriste no 1º post: 212.113.180.107 que me pareceu chegar realmente a um servidor SIP, mas recebo a informação de que o login/pass estão errados.

A Porta 4 do router zon faz como se tivesses outra ligação independente à net atravéz de um router teu .
Desconhecia isso. Ou seja, a porta 4 está switched diretamente com o ONT e não tem roteamento, ou é um DMZ hard-coded no router?
Que IP é que o meu router vai obter nesse caso? O meu IP externo?
 
Back
Topo