web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑

web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑

本文将描述小白本白在进行DVWA-文件上传漏洞(高级)实战时的完成步骤,以及所遇到的问题

测试步骤

第一步、查看源码:



if( isset( $_POST[ 'Upload' ] ) ) {
    // Where are we going to be writing to?
    $target_path  = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/";
    $target_path .= basename( $_FILES[ 'uploaded' ][ 'name' ] );

    // File information
    $uploaded_name = $_FILES[ 'uploaded' ][ 'name' ];
    $uploaded_ext  = substr( $uploaded_name, strrpos( $uploaded_name, '.' ) + 1);
    $uploaded_size = $_FILES[ 'uploaded' ][ 'size' ];
    $uploaded_tmp  = $_FILES[ 'uploaded' ][ 'tmp_name' ];

    // Is it an image?
    if( ( strtolower( $uploaded_ext ) == "jpg" || strtolower( $uploaded_ext ) == "jpeg" || strtolower( $uploaded_ext ) == "png" ) &&
        ( $uploaded_size < 100000 ) &&
        getimagesize( $uploaded_tmp ) ) {

        // Can we move the file to the upload folder?
        if( !move_uploaded_file( $uploaded_tmp, $target_path ) ) {
            // No
            echo '
Your image was not uploaded.
'
; } else { // Yes! echo "
{$target_path} succesfully uploaded!
"
; } } else { // Invalid file echo '
Your image was not uploaded. We can only accept JPEG or PNG images.
'
; } } ?>

通过代码审计,我们可以看出它对上传文件的类型做了明确的要求,只能上传jpg、jpeg和png类型的文件,此时我们可以考虑利用web服务器的解析漏洞或者使用%00截断,又或者通过上传图片木马来绕过验证。这里我选择的是上传图片木马。

第二步:制作图片木马

  1. 准备好一张图片(xx.jpg)和一句话木马(test.php),一句话木马语句可自行百度;
  2. 将一句话木马植入图片中,一句话木马最好不要植入在图片的开头(有可能会造成文件损坏),Windows执行语句:copy xx.jpg/b+test.php/a test.jpg;Linux木马植入执行语句:cat test.php >> xx.jpg
  3. 查看图片内容,确认一句话木马植入成功,可以看到图片木马制作完成:
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第1张图片

第三步、开始进行文件上传,难度选择High,上传成功:

web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第2张图片
第四步、利用DVWA-文件包含漏洞(高级)执行图片木马程序;

http://192.168.98.187/DVWA-master/vulnerabilities/fi/?page=file:///D:/phpStudy/WWW/DVWA-master/hackable/uploads/xx.jpg

注:在我搭建的环境里,我的文件上传目录是:D:/phpStudy/WWW/DVWA-master/hackable/uploads/xx.jpg
文件成功被执行:
web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第3张图片

第五步、使用蚁剑连接,连接的URL为:http://192.168.98.187/DVWA-master/vulnerabilities/fi/?page=file:///D:/phpStudy/WWW/DVWA-master/hackable/uploads/xx.jpg。但是在连接过程中,出现了意外,并没有成功连接。
web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第4张图片
通过网上查阅资料,发现蚁剑在连接时并没有携带cookie,正因为缺少cookie值才无法连接成功。

解决步骤:

  • 首先鼠标右键点击-浏览网站;
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第5张图片
  • 在地址栏访问DVWA首页,进行登录;
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第6张图片
  • 登录成功之后,将难度设置为High,因为网站默认是impossible,这时携带的cookie信息是impossible,url会访问失败,所以需要将级别设置为High,然后点击保存cookie信息;
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第7张图片
    cookie保存成功:
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第8张图片
  • 点击这个图标,回到首页:
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第9张图片
  • 右键点击文件管理,成功获取目录:
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第10张图片
    web渗透测试实战-DVWA-文件上传漏洞(High-高级),菜刀工具-蚁剑_第11张图片

你可能感兴趣的:(web渗透测试,安全,php,apache)