主页 > 网络知识 > 一文详解Webshell(5)

一文详解Webshell(5)

 

一文详解Webshell

 

使用已经建立的后门shell连接,启动反弹TCP请求。

 

一文详解Webshell

 

现在已经建立了反弹shell连接(192.168.5.25 → 192.168.5.26)。

 

一文详解Webshell

 

通过使用反弹TCP Shell控制服务器,而访问或错误日志中没有任何痕迹,因为通信是通过TCP(第4层)而不是HTTP(第7层)进行的。

五、Webshell检测和预防

检测

如果管理员怀疑其系统中存在Webshell或只是进行例行检查,则需要检查以下内容。

首先,必须针对Webshell正在使用的常见关键字过滤服务器访问和错误日志,包括文件名称和/或参数名称。您可根据下面的示例,在Apache HTTP Server访问日志中的URL中搜索字符串文件。

 

一文详解Webshell

 

必须在文件系统(通常是Web服务器根目录)中搜索文件或文件名中的通用字符串。

 

一文详解Webshell

 

如果搜索到很长的字符串,这可能表示已进行了编码。一些后门程序具有数千行代码。

 

一文详解Webshell

 

搜索最近X天修改过的文件。在以下示例中,我们搜索了前一天更改的* .php文件,但建议搜索所有更改过的文件,因为Webshell也可以嵌入到图像或任何其他文件中。

 

一文详解Webshell

 

监视网络中存在异常的网络流量和连接。

 

一文详解Webshell

 

分析.htaccess文件是否进行了修改。以下是攻击者可能对.htaccess文件进行更改的示例。

 

一文详解Webshell

 

预防

通常,黑客会利用Web服务器软件中存在的漏洞来安装Webshell。因此,消除这些漏洞对于避免失陷Web服务器的潜在风险很重要。以下是一些与Webshell相关的预防措施。

如果不使用,要禁用危险的PHP函数,例如exec()、shell_exec()、passthru()、system()、show_source()、proc_open()、pcntl_exec()、eval()与assert()。

如果必须要启用这些命令,请确保未授权用户无法访问这些脚本。此外,使用escapeshellarg()和escapeshellcmd()可以确保不能将用户输入注入到shell命令中,从而导致命令执行漏洞。

如果Web应用程序正在使用上传表单,请确保上传的表单是安全的,并且仅允许上传白名单所允许的文件类型。

不要相信用户输入的信息。

不要盲目使用在线论坛或网站上的代码。

对于WordPress,如果不需要,要避免安装第三方插件。如果需要使用插件,请确保插接件其信誉良好且经常更新。

在敏感目录(如图片或上传)中禁用PHP执行。

锁定Web服务器用户权限。

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!