Престъпление ли е сканирането на портове?
НК чл. 319а - "Който неправомерно осъществи достъп до информационна система или части от нея, в немаловажни случаи се наказва с лишаване от свобода до две години."
Нека да си представим следната случка - сравнително натоварен ден в офиса, тестване на лабораторни системи предоставящи HTTP достъп на порт 8181. Разговаряйки с колега, в бързината вместо адреса на тестваната машина 172.16.16.17 въвеждам 178.16.16.17 и задавам порт 8181. Получавам достъп до Web портал, свързан с ERP система, на трета страна, за който дори не съм подозирал, че съществува (адреса, порта и портала са измислени). Тук следва и дълга редица от въпроси:
- Това неправомерно осъществен достъп ли е?
- Подлежа ли на санкция или не?
- Действието е напълно неволно и не е умишлено. Адресът се намира в Рига, а Латвия членува в ЕС, тогава съответното законодателство следва ли да позволява проследяване и налагане на наказателни мерки при компютърни престъпления?
- Дали компанията, използваща този адрес, ще сезира съответните институции?
- От гледна точка на компанията, как може да се разбере, че има злонамерен умисъл?
- Аз съм инженер и не съм запознат с юридическите особености. Къде мога да потърся информация по въпроса?
Нека да си представим нова ситуация. Вместо погрешка умишлено използвам скенер за портове, например Nmap и проверявам състоянието на TCP порт 8181 на 178:16:16:18. Сега подлежа ли на санкция или не?
Въпросът е прост - сканирането на портове престъпление ли или не?
В интернет има много мнения по въпроса, а и нелоши тениски.
Напълно подкрепям публикуваната информация на сайта на Nmap в секцията "Legal Issues", където авторът посочва, че според него сканирането на портове не е злонамерено действие, но не съветва хората да се доверяват на написаното върху тениска. Също така и примерът с почукването на входната врата с цел да се провери, дали прозорците са затворени и заключени, е донякъде подвеждащ (личното ми мнение е , че е важно да се посочи, от коя страна на врата се почуква).
Мнението на много мои приятели и колеги, което се доказа по "най-представителния" метод - анкета във Facebook, показа, че 93% подкрепят тезата, че сканирането на портове не е престъпление, но все пак е важно да изясним какво точно се случва при сканиране на даден TCP порт с nmap?
Нека да разгледаме пример, при който от система с публичен IPv4 адрес 81.161.249.8 се проверява, дали порт 443 на устройствo с IPv4 адрес 81.161.249.67 е отворен. Прихванатите пакети на целевата система са показани на фигурата:
Ясно се вижда, че сканирането се базира на подхода "SYN Scan", а "3-way handshake" не завършва. В тази ситуация, от сканираната система към сканиращата се изпраща само пакет, съдържащ TCP флагове SYN и ACK, но не се пренасят данни.
Ако се върнем към чл. 319а от НК, осъществен ли е достъп? Моето мнение е, че не е осъществен. В RFC793 е посочено, че изграждането на TCP сесия за пренос на данни изисква завършване на процедурата "3-way handshake", а в примера не се изпраща последния необходим сегмент с флаг ACK. Също така под "достъп" най-често се разбира възможността да се види обект или метаданни, а тук липсва пренос на информация, освен служебните за "3-way handshake" флагове и съответни хедъри на сегмента, пакета и фрейма.
И двата посочени в горния пример IP адреси са от академична инфраструктура. Какво би станало, ако сканирането е извършено от домашен потребител? Този въпрос ме накара да прочета (признавам си за първи път) общите условия на A1 - телекома, който използвам вкъщи. Там е записано:
51. Потребителят е длъжен да не използва Услугата за неразрешени от Доставчика и действащото законодателство дейности и цели, включително, но не само:
...
51.4. да не извършва действия с цел проникване или получаване на информация от друг компютър в рамките на Мрежата без съгласието на собственика и ползвателя на този компютър;
При сканирането на портове отношение има чл. 51.4, но отново не се извършва достъп и получаване на информация.
Възможно ли е сканирането на портове да бъде злонамерено? Да, много често този подход се използва в етапа на разузнаване при различни хакерски атаки. Тук отново възниква въпрос - как да се различи злонамерено сканиране от случайно? Важно е да се анализират последващите пакети и сесии към дадената система, а получената информация може да послужи да се определи и характера на действието.
Да обобщим - мнението ми е, че сканирането на портове може да не е престъпление, но трябва да се подхожда етично и професионално към него.
... а сканирането за уязвимости престъпление ли е?