TCP 规范化技术

  • 确保流量遵循TCP协议,阻止逃避攻击
  • 默认情况下,只允许最小TCP特性
  • 执行TCP初始化序列号扰乱功能以保护内部主机
  • 为上层监控提供对字节流的重组装
    • ASA需要对应用层进行监控
    • 将TCP会话缓存起来,进行排序,针对TCP数据里的关键字进行正则表达式过滤

TCP 规范化丢包检查

  • show asp drop
  • caputre type asp 显示每个被丢弃的数据包以及详细的原因代码
  • show service-policy 显示与特定检查匹配的数据包数量等等

TCP 序列号猜测攻击

解决方案

TCP 状态化旁路

  • 使用MPF技术来归类特定流量
  • 指定该特定流量只查询ACL是否放行,不在查询状态化信息
  • 同时关闭以下安全机制
    • AIC
    • AIP-SSM
    • SSC-SSM
    • cut-through
    • proxy
    • TCP规范化处理
  • 确保旁路流量是安全可信的
    1. ciscoasa(config)# access-list vpn extended permit tcp any any
    2. ciscoasa(config)# class-map C1
    3. ciscoasa(config-cmap)# match access-list vpn
    4. ciscoasa(config-cmap)# exit
    5. ciscoasa(config)# show run policy-map
    6. ciscoasa(config)# policy-map global_policy
    7. ciscoasa(config-pmap)# class inspection_default
    8. ciscoasa(config-pmap-c)# exit
    9. ciscoasa(config-pmap)# class
    10. ciscoasa(config-pmap)# class C1
    11. ciscoasa(config-pmap-c)# set connection advanced-options tcp-state-bypass

ASA 序列号扰乱功能对BGP的影响

  • BGP 开启密钥认证后会对以下信息一起做哈希
    • BGP条目
    • TCP头部
      • 其中包含序列号
    • TCP伪头部
    • BGP密钥
  • ASA扰乱序列号以后会导致哈希值不匹配
  1. R2#show run | s bgp
  2. router bgp 1
  3. bgp log-neighbor-changes
  4. neighbor 172.16.1.1 remote-as 1
  5. neighbor 172.16.1.1 password cisco
  6. neighbor 172.16.1.1 update-source Ethernet0/0
  7. R1#show run | s bgp
  8. router bgp 1
  9. bgp log-neighbor-changes
  10. neighbor 172.16.2.1 remote-as 1
  11. neighbor 172.16.2.1 password cisco
  12. neighbor 172.16.2.1 update-source Ethernet0/0
  13. R2#
  14. *Dec 25 06:40:38.444: %TCP-6-BADAUTH: Invalid MD5 digest from 172.16.1.1(56910) to 172.16.2.1(179) tableid - 0
  15. R2#
  16. *Dec 25 06:40:40.449: %TCP-6-BADAUTH: Invalid MD5 digest from 172.16.1.1(56910) to 172.16.2.1(179) tableid - 0
  17. R2#

解决方案

  1. ASAv(config)# class-map bgp
  2. ASAv(config-cmap)# match port tcp eq bgp
  3. ASAv(config-cmap)# policy-map global_policy
  4. ASAv(config-pmap)# class bgp
  5. ASAv(config-pmap-c)# set connection random-sequence-number disable
  6. *Dec 25 06:46:47.935: %TCP-6-BADAUTH: Invalid MD5 digest from 172.16.1.1(53948) to 172.16.2.1(179) tableid - 0
  7. R2#
  8. *Dec 25 06:47:14.168: %BGP-5-ADJCHANGE: neighbor 172.16.1.1 Up

ASA 序列号扰乱功能对异步路由影响

  • 如果在异步路由中一部分流量经过安全设备,而一部分流量没有经过安全设备,则会导致数据包序列号在数据收发双方不可用!