Показаны сообщения с ярлыком защита. Показать все сообщения
Показаны сообщения с ярлыком защита. Показать все сообщения

воскресенье, 23 декабря 2012 г.

Алгоритмы защиты ARP


Algorithm 1 update arp cache

1: if DHCP packet is received then

2:   if message type is DHCPACK then

3:       IP ← ‘your IP address’ field value

4:       if IP != server’s IP then

5:          MAC ← ‘client’s hardware address’ field value

6:          Add (IP, MAC) to server’s ARP cache

7:          Add (IP, MAC) to backup file

8:       end if

9:    else if message type is DHCPRELEASE then

10:      IP ← ‘your IP address’ field value

11:      if IP != server’s IP then

12:         Remove (IP, ?) from server’s ARP cache

13:         Remove (IP, ?) from backup file

14:      end if

15:   else if message type is DHCPDECLINE then

16:      IP ← ‘requested IP address’ options field value

17:      if IP != server’s IP then

18:         Remove (IP, ?) from server’s ARP cache

19:         Remove (IP, ?) from backup file

20:      end if

21:   else

22:      NOOP

23:   end if


24:end if
Algorithm 2 send arp reply 1: if ARP message is received then 2: if operation field = REQUEST then 3: TPA ← Target Protocol Address field value 4: Create an ARP REPLY message 5: Sender Protocol Address field ← TPA 6: if TPA = server’s IP address then 7: SHA ← server’s MAC address 8: else 9: Find (TPA, MAC) mapping in ARP cache 10: if (TPA, MAC) does not exist then 11: return //No response is sent 12: end if 13: SHA ← MAC address in (TPA, MAC) 14: end if 15: Sender Hardware Address field ← SHA 16: Send ARP response to requesting host 17: end if 18:end if
—————————————————————–
Дальнейшее – за гуру скриптинга. Скрипткидди, проходьте мимо!
 




Алгоритмы защиты ARP

пятница, 21 декабря 2012 г.

Организация защиты NetBIOS, SMB и выявление злодеев. ;-)




Портами, используемыми NetBIOS, SMB, являются:
138 – NetBIOS Datagram;
137 – NetBIOS Name Resolution;
139 – NetBIOS Session;
445 – SMB.
Данные порты используются также протоколом RPC и различными сетевыми сервисами. Поэтому слудет быть осторожными с блокированием данных портов.
Обращаем внимание на то, что любая сессия начинается с netbios-запроса, задания ip-адреса и определения tcp-порта удаленного объекта, далее следует обмен NETBIOS-сообщениями, после чего сессия закрывается. Сессия осуществляет обмен информацией между двумя netbios-приложениями. Длина сообщения лежит в пределах от 0 до 131071 байт. Допустимо одновременное осуществление нескольких сессий между двумя объектами.
При организации IP-транспорта через NETBIOS IP-дейтограмма вкладывается в NETBIOS-пакет. Информационный обмен происходит в этом случае без установления связи между объектами. Имена Netbios должны содержать в себе IP-адреса. Так часть NETBIOS-адреса может иметь вид, ip.**.**.**.**, где IP указывает на тип операции (IP через Netbios), а **.**.**.** – ip-адрес. Система netbios имеет собственную систему команд (call, listen, hang up, send, receive, session status, reset, cancel, adapter status, unlink, remote program load) и примитивов для работы с дейтограммами (send datagram, send broadcast datagram, receive datagram, receive broadcast datagram). Все оконечные узлы netbios делятся на три типа:
широковещательные (“b”) узлы;
узлы точка-точка (“p”);
узлы смешанного типа (“m”).
IP-адрес может ассоциироваться с одним из указанных типов. B-узлы устанавливают связь со своим партнером посредством широковещательных запросов. P- и M-узлы для этой цели используют netbios сервер имен (NBNS, WINS) и сервер распределения дейтограмм (NBDD, Browser).
Кроме того “обозревателей” сети (браузеров) в локальной сети может быть несколько. Применительно к домену MS Windows одним из обозревателей (браузеров) в локальной сети должен выступать один из контроллеров домена. Но главным обозревателем (мастер броузер) должен быть только один из хостов. Количество браузеров в сети зависит от размеров данной сети.
Итак, прочитав вышеизложенное, возможно сделать следующие умозаключения для защиты сервисов NetBIOS, SMB от злоумышленников:
1. Однозначно прописывать адреса WINS серверов на хостах сети;
2. Жестко прописывать адреса критически важных узллов сети в файлах hosts, lmhosts на хостах сети, чтобы не было искажения (или минимизация искажения) информации в результате спуфинга адресации;
3. Запретить в правилах фильтрации трафика получение пакетов на вышеуказанные порты от недоверенных адресов по протоколу UDP , разрешив при этом получение пакетов на данные порты только с WINS, SMB (SAMBA) серверов, а также задействовать защиту от ARP спуфинга (если эту опцию поддерживает фильтр пакетов);
4. Настроить периодический перезапуск службы NetBIOS с очисткой кеша, для предотвращения отравления кеша службы;
5. Для серверов служб имен можно посоветовать более частое безопасное обновление зон.
6. В правилах фильтрации сетевого фильтра (стороннего) необходимо также задействовать защиту от ARP спуфинга и IP спуфинга.
Это не защитит от наиболее изощеренных методов атак, но абсолютное большинство умельцев отучит от вредительских действий. Оставшаяся часть, продвинутых в данном направлении, пользователей будет уже нам знакома.
Вот такой небольшой план решения большой проблемы. ;-) Удачи вам, читатели, надеюсь данная статья поможет вам бороться со злодеями в локальных сетях.


https://nikitushkinandrey.wordpress.com/2012/05/11/%d0%be%d1%80%d0%b3%d0%b0%d0%bd%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d1%8f-%d0%b7%d0%b0%d1%89%d0%b8%d1%82%d1%8b-netbios-smb-%d0%b8-%d0%b2%d1%8b%d1%8f%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%b7%d0%bb%d0%be/

Мой рецепт по детектированию и блокированию аномального сканирования средствами iptables в Linux


Давно не писал сам, хочу исправиться.
Сегодня речь пойдет о детектировании и блокировки аномального сканирования средствами iptables в операционной системе Linux.
Т. к. рецептами моего блога пользуются без указания меня, как первоисточника (и без ссылок на мои статьи), размещая, к тому же, аналогичную информацию задним числом, то обещаю, что это последняя моя помощь вам, любители плагиата.
Нижеописанные правила собраны мною из различных, не русскоязычных, источников, но все вместе, в том виде, в котором они будут приведены мною, вы не найдете ни на одном ресурсе в сети Интернет. Впрочем информация, приведенная по тьюнингу сетевого стека Windows в разделе MS Platforms на данном сайте, также уникальна и нигде не встречается в том виде, в котором она дается мною.
Не буду зазря лить воду, перейдем к делу.
Предлагаю внести следующие изменения в ваши таблицы iptables:
iptables -A INPUT -p tcp –tcp-flags ALL NONE -j LOG –log-prefix “Stealth scan: 0STEAL “
iptables -A INPUT -p tcp –tcp-flags ALL NONE -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL ALL -j LOG –log-prefix “Stealth scan: 1STEAL “
iptables -A INPUT -p tcp –tcp-flags ALL ALL -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL FIN,URG,PSH -j LOG –log-prefix “Stealth scan: 2STEAL “
iptables -A INPUT -p tcp –tcp-flags ALL FIN,URG,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j LOG –log-prefix “Stealth scan: 3STEAL “
iptables -A INPUT -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,RST SYN,RST -j LOG –log-prefix “Stealth scan: 4STEAL “
iptables -A INPUT -p tcp –tcp-flags SYN,RST SYN,RST -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN SYN,FIN -j LOG –log-prefix “Stealth scan: 5STEAL “
iptables -A INPUT -p tcp –tcp-flags SYN,FIN SYN,FIN -j STEAL
iptables -A INPUT -p tcp –tcp-flags FIN,ACK FIN -j LOG –log-prefix “6Stealth scan”
iptables -A INPUT -p tcp –tcp-flags FIN,ACK FIN -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH PSH -j LOG –log-prefix “7Abnormal steal”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG URG -j LOG –log-prefix “8Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG URG -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK FIN -j LOG –log-prefix “A9bnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK FIN -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK NONE -j LOG –log-prefix “10Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK NONE -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH SYN,FIN,URG,PSH -j LOG –log-prefix “11Abnormal sc$
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH SYN,FIN,URG,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH FIN,URG,PSH -j LOG –log-prefix “12Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,ACK,URG,PSH FIN,URG,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags ACK,URG URG -j LOG –log-prefix “13Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ACK,URG URG -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL FIN -j LOG –log-prefix “14Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL FIN -j STEAL
iptables -A INPUT -p tcp –tcp-flags FIN,RST FIN,RST -j LOG –log-prefix “15Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags FIN,RST FIN,RST -j STEAL
iptables -A INPUT -p tcp –tcp-flags ACK,PSH PSH -j LOG –log-prefix “16Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ACK,PSH PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,ACK,FIN,RST SYN -j LOG –log-prefix “17Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,ACK,FIN,RST SYN -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,URG SYN,URG -j LOG –log-prefix “18Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,URG SYN,URG -j STEAL
iptables -A INPUT -p tcp –tcp-flags FIN,SYN,RST,ACK SYN -j LOG –log-prefix “19Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags FIN,SYN,RST,ACK SYN -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,PSH SYN,FIN,PSH -j LOG –log-prefix “20Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,PSH SYN,FIN,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST SYN,FIN,RST -j LOG –log-prefix “21Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST SYN,FIN,RST -j STEAL
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,PSH SYN,FIN,RST,PSH -j LOG –log-prefix “22Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags SYN,FIN,RST,PSH SYN,FIN,RST,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL SYN,PSH -j LOG –log-prefix “23Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL SYN,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL SYN,ACK,PSH -j LOG –log-prefix “24Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL SYN,ACK,PSH -j STEAL
iptables -A INPUT -p tcp –tcp-flags ACK,FIN FIN -j LOG –log-prefix “25Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ACK,FIN FIN -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL RST -j LOG –log-prefix “26Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL RST -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL RST,ACK -j LOG –log-prefix “27Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL RST,ACK -j STEAL
iptables -A INPUT -p tcp –tcp-flags ALL ACK,PSH,RST -j LOG –log-prefix “28Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags ALL ACK,PSH,RST -j STEAL
iptables -A INPUT -p tcp –tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j LOG –log-prefix “29Abnormal scan”
iptables -A INPUT -p tcp –tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j STEAL
Как вы видите всего 29 цепочек. Данный список можно дополнить еще несколькими цепочками, но они нарушат нормальное функционирование сетевого стека вашего пингвина и могут быть использованы только на станции в конфигурации со средствами детектирования и превентивного реагирования сетевого вторжения. Поэтому мною они приводится не будут.
Не стоит также забывать о способах тmюнига сетевого стека средствами sysctrl, которые более богато представлены, по сравнению с возможностями сетевого стека MS Windows. С помощью средств sysctrl вы сможете еще более защитить ваш дефолтный тюкс.
Обещаю вам еще чем-нибудь порадовать в будущем.
Удачи! И до новых встреч!



https://nikitushkinandrey.wordpress.com/2012/07/20/%d0%bc%d0%be%d0%b9-%d1%80%d0%b5%d1%86%d0%b5%d0%bf%d1%82-%d0%bf%d0%be-%d0%b4%d0%b5%d1%82%d0%b5%d0%ba%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d1%8e-%d0%b8-%d0%b1%d0%bb%d0%be%d0%ba%d0%b8%d1%80/

четверг, 20 декабря 2012 г.

Оптимизация сетевого стека на платформах MS Windows с элементами защиты от DoS.


Проверялось на Windows 2000/XP/2003 с последними SP и выше. Является продолжением темы о тьюнинге сетевого стека платформ MS Windows.
Предлагаю добавить в реестр вашей рабочей станции или сервера (в этом случае необходимо понимать, для чего вы это делаете), следующие ключи реестра, ответственные за IPv4, но их можно применить и к IPv6:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\AFD\Parameters]
“EnableDynamicBacklog”=dword:00000001
“MinimumDynamicBacklog”=dword:00000014
“MaximumDynamicBacklog”=dword:00004e20
“DynamicBacklogGrowthDelta”=dword:0000000a
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]
“ForwardBroadcasts”=dword:00000000
“IPEnableRouter”=dword:00000000
“UseDomainNameDevolution”=dword:00000000
“EnableICMPRedirect”=dword:00000000
“DeadGWDetectDefault”=dword:00000000
“DontAddDefaultGatewayDefault”=dword:00000000
“EnableWsd”=dword:00000001
“QualifyingDestinationThreshold”=dword:00000003
“SynAttackProtect”=dword:00000002
“TcpMaxHalfOpen”=dword:00000064
“TcpMaxHalfOpenRetried”=dword:00000050
“TcpMaxPortsExhausted”=dword:00000001
“TcpMaxConnectResponseRetransmissions”=dword:00000002
“EnableDeadGWDetect”=dword:00000000
“EnablePMTUDiscovery”=dword:00000000
“KeepAliveTime”=dword:000493e0
“EnableICMPRedirects”=dword:00000000
“EnableSecurityFilters”=dword:00000001
“DisableIPSourseRouting”=dword:00000002
“TcpMaxDataRetransmissions”=dword:00000003
“EnableDynamicBacklog”=dword:00000001
“MinimumDynamicBacklog”=dword:00000014
“MaximumDynamicBacklog”=dword:00004e20
“DynamicBacklogGrowthDelta”=dword:0000000a
“PerformRouterDiscovery”=dword:00000000
“EnableMulticastForwarding”=dword:00000000
“EnableAddrMaskReply”=dword:00000000
“TcpMaxDupAcks”=dword:00000002
“GlobalMaxTcpWindowSize”=dword:0000ffff
“SackOpts”=dword:00000001
“TcpUseRFC1122UrgentPointer”=dword:00000001
“IGMPLevel”=dword:00000000
“EnablePMTUBHDetect”=dword:00000000
“DefaultTTL”=dword:00000083
“DefaultTOS”=dword:0000000c
“UseZeroBroadcast”=dword:00000000
“TcpTimedWaitDelay”=dword:0000001e
“Tcp1323Opts”=dword:00000003
“PMTUBlackHoleDetect”=dword:00000000
“DefaultRcvWindow”=dword:00002000
“DeadGWDetect”=dword:00000000
“BSDUrgent”=dword:00000000
“DisableIPSourceRouting”=dword:00000001
“TcpWindowSize”=dword:00002238
Еще раз обращаю ваше внимание, что данное изменение параметров реестра даст максимальный эффект только при установленных последних SP для MS Windows 2000/XP/2003. Для MS Windows Vista/2008 наличие SP уже не играет роли, т. к. данные платформы уже имеют необходимую функциональность сетевого стека. Также обращаю внимание, что для серверов, тех, которые являются шлюзами, параметры, ответственные за маршрутизацию для пакетов, не стоит изменять. :-) Кроме того, не забываем отключать не используемые сервисы и сетевые средства через использование редактирования локальных и групповых политик безопасности, что дополнительно усилит защиту ресурсов ваших серверов и рабочих станций. Не забываем о защите сервисов, фильтрации пакетов и изоляции доменов (подсетей /аналог NAP в Windows 2008/).
Для платформ Unix, Linux, Mac OS доступны и более жесткие правила по фильтрации пакетов, но, к сожалению, платформам MS Windows еще далеко до их функциональности.
Информация, представленная в данной статье, собрана по материалам ресурса technet.microsoft.com. Описания тех или иных приведенных параметров мною не приводились, знающим особенности протоколов семейства TCP/IP и так будет ясно, а не знающих подвигнет на дальнейшее изучение данной области знаний. Учиться ни когда не поздно, не правда ли?
Данная статья будет полезна широкому кругу специалистов, как начинающим, так и уже имеющим некоторый опыт работы.
При публикации данной статьи на сторонних ресурсах прямая ссылка на первоисточник обязательна.



https://nikitushkinandrey.wordpress.com/2012/05/11/%d0%be%d0%bf%d1%82%d0%b8%d0%bc%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d1%8f-%d1%81%d0%b5%d1%82%d0%b5%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d1%82%d0%b5%d0%ba%d0%b0-%d0%bd%d0%b0-%d0%bf%d0%bb%d0%b0%d1%82%d1%84%d0%be/
http://nikitushkinandrey.wordpress.com