Linux系统扫描技术及安全防范
SYN攻击
利用 tcp 缺陷, 导致系统服务停止响应, 带宽跑满/响应缓慢
原理: 伪造 ip 给服务器发送 tcp SYN 请求, 服务器会计入 backlog 缓存区, 当连接建立后再删除, 并给请求 ip 发送 SYN+ACK 包进行确认, 失败进行重试
DDOS攻击: 分布式访问拒绝服务攻击
恶意扫描(暴力破解)
tracert # cmd 获取网络访问路由信息, 功能类似 linux traceroutenmap # 端口扫描, 获取开放的端口nc # 登录到路由的管理员页面后(暴力破解等方式获取账号密码), 尝试使用 nc 命令进行交互式 shell 操作(后门); 不会因为频繁登录留下痕迹 / 登录方便 / 不会被侦测设备侦测到# 主机扫描(ping); 并行发送, 结果易读fping -au # alive unalivefping ip1 -g -f # group file# 主机扫描(多种协议)hping -pSa # port(目标端口) SYN(tcp) address(伪造来源ip -> ddos)# 路由扫描tracert # windowtraceroute # linux, 默认是使用 udp 协议, 端口 30000 以上traceroute -n ip/dns # 不显示 dns 信息traceroute -T -p # tcp porttraceroute -I # imcp 协议mtr ip/dns # 动态显示# 批量主机服务扫描nmap -sP # ping 扫描 -> 简单快速有效nmap -sS -p # tcp SYN 扫描 -> 高效 / 不易被检测 / 通用; 默认值扫描列表中的端口, 可以使用 -p 指定端口nmap -sT # tcp 全开放 扫描 -> 真实 / 结果可靠nmap -sU # udp 扫描 -> 回避防火墙; 但是 linux 限制 udp 不可达的信息发送, 所以比较慢ncat -w -v -u # wait verbose udp(默认 tcp) 输入输出模式# SYN类型DDOS攻击sysctl -w net.ipv4.tcp_synack_retries=3 # 减少失败重试sysctl -w net.ipv4.tcp_syn_retries=3sysctl -w net.ipv4.tcp_syncookies=1 # 开启 SYN cookie 技术, 即 backlog 缓存区满的时候可以写入到文件中sysctl -w net.ipv4.tcp_max_syn_backlog=2048 # 增加 backlog 队列# 其他预防策略sysctl -w net.ipv4.icmp_echo_ignore_all=1 # 关闭 icmp 协议请求# iptables 防止扫描