LINUX.ORG.RU
ФорумAdmin

Honeypot для nmap.

 ,


0

1

Как обнаружить сканирование по порту.

Например: sudo nmap -Pn –osscan-limit -p 81 192.168.1.100

Попытался:


const PORT = 82;

const server = net.createServer((socket) => {
    const clientAddress = socket.remoteAddress;
    console.log(Port scan detected from ${clientAddress});
    
    // You can send a response or take other actions here
    socket.end(); // Close the connection immediately
});

server.listen(PORT, () => {
    console.log(Honeypot listening on port ${PORT}...);
});

server.on('error', (err) => {
    console.error(Error: ${err.message});
});

Но ничего не выдает

Ответ на: комментарий от rtxtxtrx

nmap удачно определяет что 81 открыт, но скрипт ничего не выдает.

вот польная версия кода:

const net = require('net');

const PORT = 81;

const server = net.createServer((socket) => {
    const clientAddress = socket.remoteAddress;
    console.log(`Port scan detected from ${clientAddress}`);
    
    // You can send a response or take other actions here
    socket.end(); // Close the connection immediately
});

server.listen(PORT, () => {
    console.log(`Honeypot listening on port ${PORT}...`);
});

server.on('error', (err) => {
    console.error(`Error: ${err.message}`);
});


ilhomparisi
() автор топика
Ответ на: комментарий от ilhomparisi

nmap с помощью SYN-пакетов проверяет можно ли установить соединение, твой сервер ждет еще SYN-ACK пакет, чтобы решить, что соединение установлено… Точнее не сервер, а линупс ждет… Те такое нужно отлавливать на уровне ядра, а не приложения, приложение и не знает что кто-то в приницпе спрашивал можно ли открыть 81 порт на твоем сервере

rtxtxtrx ★★
()
Ответ на: комментарий от ilhomparisi

Не проще ли tcp-syn куда-нибудь сохранять/передавать?

При помощи палки и верёвки:

через «iptables .... -p tcp --dport 81 --syn -j NFLOG --nflog-group 3 --nflog-size 128 --nflog-threshold 16»

а дальше вывод «tcpdump -ni nflog:3» куда-нибудь сохранять.

Есть еще более простой вариант через -j LOG, ну а дальше в логах смотреть.

Можно через ipset запоминать кто и сколько раз пытался подключиться.

vel ★★★★★
()