木马上传几种常见的方法:
1.使用00截断,brupsuite上传
使用00截断是使用程序员在编写程序时不严格过滤文件的上传路径X00上传截断漏洞。
假设文件的上传路径是http://xx.xx.xx.xx/upfiles/lubr.php.jpg,通过Burpsuite抓包截断将lubr.php后面的“.”换成“0X00”。上传时,文件系统读取0X00″会认为文件已经结束了,所以会lubr.php.jpg 的内容写到lubr.php从而达到攻击的目的。
2.结构服务器端扩展名检测上传
当浏览器向服务器端提交文件时,服务器端将根据设定的黑名单检测浏览器提交的文件扩展名。如果上传的文件扩展名不符合黑名单的限制,则不会上传,否则上传将成功。
本例解释了木马一句话的文件名lubr.php改成lubr.php.abc。首先,当服务器验证文件扩展名称时,验证是.abc,只要扩展名符合服务器端黑名单规则,就可以上传。此外,在浏览器端访问文件时,Apache若无法分析.abc扩展名将向前寻找可分析的扩展名,即.php”。一句话木马可以被解析,即可通过中国菜刀连接。
3、绕过Content-Type上传检测文件类型
当浏览器将文件上传到服务器端时,服务器将文件上传Content-Type检测类型,如白名单允许,可正常上传,否则上传无效。Content-Type文件类型检测是指使用Burpsuite数据包中文件的截取和修改Content-Type类型,使其符合白名单的规则,达到上传的目的。
4.构建图片木马,绕过文件内容检测上传Shell
一般文件内容验证使用getimeagesize()函数检测将判断文件是否有效。如果是,允许上传,否则不允许上传。