Hacker ignorando iptables

8

(movido do SO)

Eu tenho o iptables para proteger um servidor sip. Ele bloqueia todos os IPs, exceto aqueles que eu especificamente abri, e parece funcionar para quase todos. Eu testei de muitos endereços IP que não são listados em branco e todos são descartados como deveriam.

MAS, eu peguei um "hacker" que parece ser capaz de contornar as regras do iptables. Seus sondadores convidam a passar, e eu não tenho ideia de como, ou que isso era possível. Em 10 anos eu não vi isso antes.

Suponho que deve ser algo que fiz, mas não consigo ver.

iptables criados assim (MYIP definido no topo - redigido):

iptables -F
iptables -X
iptables -N ALLOWEDSIP
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp -d $MYIP --dport 22 -j ACCEPT
iptables -t filter -A INPUT -j ALLOWEDSIP

# This is my white list.
iptables -A ALLOWEDSIP -j RETURN

Agora, com NADA no ALLOWEDSIP, tudo que eu deveria ser capaz de fazer é o SSH (que eu posso). Se eu ligo para eles, todos são descartados. Mas wireshark me mostra isso (meu ip redigido):

89.163.146.25 -> x.x.x.x SIP/SDP 805 Request: INVITE sip:[email protected] |
x.x.x.x -> 89.163.146.25 SIP 417 Status: 100 Giving a try |
x.x.x.x -> 89.163.146.25 SIP 875 Status: 407 Proxy Authentication Required |

As chamadas dele me atingiram e, embora rejeitadas pela ACL, elas nunca deveriam chegar lá. Nada mais consegue passar. Puxando meu cabelo para fora. Alguém sabe?

Apenas pela perfeição, aqui está o resultado do iptables -L:

# iptables -L --line-numbers -v
Chain INPUT (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       10   640 ACCEPT     all  --  any    any     anywhere             anywhere             state RELATED,ESTABLISHED
2        0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
3        0     0 ACCEPT     tcp  --  any    any     anywhere             <redacted>.com  tcp dpt:6928
4        0     0 ALLOWEDSIP  all  --  any    any     anywhere             anywhere

Chain FORWARD (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 6 packets, 544 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain ALLOWEDSIP (1 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 RETURN     all  --  any    any     anywhere             anywhere

EDITAR: Acabei de ver isso de wireshark. Eles poderiam estar fazendo algo horrível como se estabelecer de alguma outra maneira, em seguida, jogando na regra estabelecida? Talvez eles estão jogando em algum buraco no RELATED?

89.163.146.25 -> <redacted> RTCP 806 Source port: tag-pm  Destination port: sip

EDIT 2: UDP é a chave aqui. Quando eu defino o OpenSIPS para escutar apenas o TCP, o problema parece ter desaparecido. Nenhuma de suas tentativas é superada, embora estejam enviando mais dessas mensagens "tag-pm". Não explica por que os pacotes estão chegando até mesmo a opensips embora. iptables deveria tê-los parado primeiro. Adoraria saber o que fiz de errado aqui.

EDIT 3: Se eu remover o RELATED, paro de responder a eles, então é algo a ver com isso. Mas eu acho que preciso de algo relacionado. Alguma dica sobre soluções alternativas?

    
por David Wylie 10.04.2016 / 11:53

1 resposta

-1

Você poderia nullroute. Isso deve ignorar o iptables.

route add 89.163.146.25 gw 127.0.0.1 lo

Verifique isso

netstat -nr

OR

route -n
    
por 25.10.2017 / 02:27