Monday, August 27, 2012

Костыли в Cisco ASA

Для полноценной реализации Statefull Inspection, в Cisco ASA придумали Advanced Protocol Handling. Технология эта имеет кучу ограничений. Вот, например, список протоколов


1.       ctiqbe
2.       dcerpc
3.       dns
4.       esmtp
5.       ftp
6.       h323
7.       http
8.       icmp
9.       ils
10.   im
11.   ipsec-pass-thru
12.   mgcp
13.   mmp
14.   netbios
15.   pptp
16.   rsh
17.   rtsp
18.   sip
19.   skinny
20.   snmp
21.   sqlnet
22.   sunrpc
23.   tftp
24.   waas
25.   xdmcp

Как видите, список не очень впечатляющий. Настройка этого дела хоть и не сложна, но не является удобной и эффективной. Особенно при использовании в больших масштабах. Хорошую статью по конфигурированию можно почитать здесь: http://www.anticisco.ru/blogs/?p=427

Дальше еще интереснее, читаем Inspection Limitations здесь: http://www.ciscosystems.com/en/US/docs/security/asa/asa81/config/guide/inspect.html#wpxref59098


Inspection Limitations


See the following limitations for application protocol inspection:

State information for multimedia sessions that require inspection are not passed over the state link for stateful failover. The exception is GTP, which is replicated over the state link.

Some inspection engines do not support PAT, NAT, outside NAT, or NAT between same security interfaces. See "Default Inspection Policy" for more information about NAT support.

For all the application inspections, the adaptive security appliance limits the number of simultaneous, active data connections to 200 connections. For example, if an FTP client opens multiple secondary connections, the FTP inspection engine allows only 200 active connections and the 201 connection is dropped and the adaptive security appliance generates a system error message.

Inspected protocols are subject to advanced TCP-state tracking, and the TCP state of these connections is not automatically replicated. While these connections are replicated to the standby unit, there is a best-effort attempt to re-establish a TCP state. 

Вы включаете эту фичу для каког-либо протокола. После этого, ASA сможет пропустить только 200 cессий данного протокола. 201-я сессия уничтожается. Если это используется для исходящего трафика (клиенты ваши), то просто ограчивается использование данного протокола. Если клиенты внешние, а Cisco ASA защищает  вас сервис, то можно получить очень легко реализуемую DoS атаку. Достаточно открыть 200 сессий к вашему серверу по данному протоколу. После чего, другие клиенты идут лесом...