如何保护 Ubuntu 免受反向 shell 攻击

如何保护 Ubuntu 免受反向 shell 攻击

在 2016 年 Bloxfest 上,Kevin Mitnick 谈到了反向 shell。我该如何保护我的 Ubuntu 免受此类入侵?

全球最著名的黑客凯文·米特尼克 (Kevin Mitnick) 在 2016 年 Bloxfest 上回答观众提问 (2:05)

答案1

为了能够使用反向 shell,你的网络必须已经被破坏。

  • 所以不要安装 rootkit,这样你就不会有事了 ;) 坚持使用存储库,如果真的需要,请从启动板使用 PPA。确保你安装的内容来自安全来源。不要安装你不需要的软件,禁用你不需要的服务,保持你的系统更新。留意日志文件,并留意路由器上的日志。不使用时请关闭机器(例如,不要在夜间开着它)。

  • 简单的回答:如果你的系统被黑客入侵,你将无法阻止反向 shell。

  • 更详细的答案:阻止创建出站 TCP 连接(受信任地址除外)是一种让创建反向 shell 变得更加困难的方法。但你会严重限制你的系统:这也会阻止浏览互联网、通过 HTTP 安装补丁,如果你使用它,还会阻止更新防病毒软件,所以这对服务器来说基本上是好事,但对桌面来说很糟糕。

这将阻止除 DNS 查找之外的任何操作(来源):

iptables -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -j REJECT
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 23 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 445 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 5432 -j ACCEPT
iptables -A INPUT -p tcp --dport 8009 -j ACCEPT
iptables -A INPUT -p tcp --dport 8180 -j ACCEPT
iptables -A INPUT -p tcp --dport 21107 -j ACCEPT
iptables -A input -j REJECT

但是端口 53 ...

$ grep Domain /etc/services 
domain      53/tcp              # Domain Name Server

仍然会允许通过这个端口进行反向 shell,从根本上来说,如果不让你的系统完全无法使用,就无法阻止它。

所以回到第一部分:保持系统原样,不要让恶意用户访问您的系统。这样您就不必担心反向 shell。

相关内容