Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-4040-Race-Condition-in-File-Upload-Leading-to-RCE — 复现 CVE-2026-4040:带 TOCTOU 竞态条件的 Flask 上传服务器及演示任意远程代码执行的漏洞利用脚本。 | Kitploit
工具/GitHubGitHub/george0papasotiriou/cve-2026-4040-race-condition-in-file-upload-leading-to-rce
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育
GitHubgeorge0papasotiriou/cve-2026-4040-race-condition-in-file-upload-leading-to-rce

CVE-2026-4040-Race-Condition-in-File-Upload-Leading-to-RCE

复现 CVE-2026-4040:带 TOCTOU 竞态条件的 Flask 上传服务器及演示任意远程代码执行的漏洞利用脚本。

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
17天前尚未审核

CVE-2026-4040 – 文件上传中的竞态条件导致远程代码执行(RCE)

程序代码(Python Flask)

root@kitploit:~
# upload_server.py - File upload with race condition
from flask import Flask, request
import os, tempfile, time, threading

app = Flask(__name__)
UPLOAD_DIR = '/tmp/uploads'
os.makedirs(UPLOAD_DIR, exist_ok=True)

@app.route('/upload', methods=['POST'])
def upload():
    file = request.files['file']
    # Save to a temporary file
    fd, tmp_path = tempfile.mkstemp(dir=UPLOAD_DIR)
    file.save(tmp_path)
    # Simulate validation (check extension)
    if not file.filename.endswith('.txt'):
        os.unlink(tmp_path)
        return "Invalid extension", 400
    # Race window: between save and move, attacker can execute the script
    # In a real server, we'd move to safe name, but we simulate time delay
    time.sleep(0.5)   # vulnerability
    final_path = os.path.join(UPLOAD_DIR, file.filename)
    os.rename(tmp_path, final_path)
    return "Uploaded", 200

if __name__ == '__main__':
    app.run(port=5000)

CVE-2026-4040 – 文件上传竞态条件导致 RCE

Severity: Critical

概述

上传端点将上传的文件写入临时路径,验证扩展名,然后在一段延迟后将其移动到安全名称。攻击者可以在重命名之前竞相访问并执行临时文件,从而实现远程代码执行。

漏洞详情

  • 类型: TOCTOU 竞态条件
  • 影响: 在服务器上执行任意代码。
  • 根本原因: 文件被保存到可预测的临时位置,并且在验证窗口期间仍保持可执行状态。

漏洞利用演示

  1. 启动存在漏洞的服务器:
    root@kitploit:~
    pip install flask
    python upload_server.py
    
  2. 运行漏洞利用脚本:
    root@kitploit:~
    python exploit_race_upload.py
    
下载工具