初级安全入门—— WEBshell与文件上传漏洞

概念介绍

  • WebShell网页木马文件
    • 最多见利用文件上传漏洞的方法就是上传网站木马(WebShell)文件,根据开发语言的不一样又分为ASP木马、PHP木马、JSP木马等,该木马利用了脚本语言中的系统命令执行、文件读写等函数的功能,一旦上传到服务器被脚本引擎解析,攻击者就能够实现对服务器的控制。
    • 一句话木马(小马):功能简单,须要配合客户端使用,隐蔽性强,容易经过变形隐藏特征,绕过过滤
      php

    • 大马:功能完善,直接使用浏览器便可利用,隐蔽性相对较弱,一般须要经过加密等方式来隐藏特征shell

实验场景一:文件上传

  • 检测文件MIME类型的文件上传传漏洞利用浏览器

    经过把木马eval.php拓展名改为jpg,再经过代理抓包,将拓展名改回php
    安全

    实现绕过MIME类型检测
    服务器

  • 服务端黑名单检测文件扩展名的文件上传漏洞利用jsp

    把木马eval.php拓展名改为jpg,再经过代理抓包,send到BurpSuitde的repeat模块
    函数

    尝试各类拓展名修改绕过黑名单如(拓展名改成Php,PHP,php5,php6等等)
    网站

    发现Php能够绕过检验
    ui

    猜想推断或者利用其余功能找出木马在服务器的路径
    加密

    找到路径后,能够直接配合CKnife使用来控制整个服务器


文件上传漏洞防御

  • 黑名单检测:通常有个专门的blacklist文件,里面包含各类常见的危险脚本文件的拓展名,如:php,asp,jsp。该方式过滤的完整度受限于blacklist内容,不够安全
  • 白名单检测:只容许系统接受的文件类型经过,如只能上传png,jpg,zip,rar等。该方式相对安全。

总结

经过实验能够看出,木马的直接利用难度很高,通常经过文件上传,攻击者很难猜出木马在服务器的路径。木马的利用,大都是攻击者经过其余方式获取了shell权限,为了下次控制服务器的方便,在服务器上留下的后门(正如木马自己的含义)。

相关文章
相关标签/搜索