1、短信轰炸项目介绍及使用教程:
GitHub:https://github.com/OpenEthan/SMSBoom
2、资源包下载链接:
https://github.com/OpenEthan/SMSBoom/releases
Contents
三件事
- 原作者 @whalefell 为保障自身安全及规避风险,于
2022/7/6
将本仓库移交给我.至此,本仓库所有事务与原作者无关. - 介于本项目在简中 GitHub 圈影响较大,请大家遵守自己所在国家地区的相关法律,违反法律者与开发者无关.
- 请大家理智甄别,独立思考.
简体中文:
- 原作者 @whalefell 为保障自身安全及规避风险,于
2022/7/6
将本仓库移交给我.至此,本仓库所有事务与原作者无关.- 介于本项目在简中 GitHub 圈影响较大,请大家遵守自己所在国家地区的相关法律,违反法律者与开发者无关.
- 请大家理智甄别,独立思考.
免责声明
- 若使用者滥用本项目,本人 无需承担 任何法律责任.
- 本程序仅供娱乐,源码全部开源,禁止滥用 和二次 贩卖盈利. 禁止用于商业用途.
Feature
- 通过自定义
api.json
的方式定义接口. - 支持关键字替换. 时间戳
[timestamp]
手机号[phone]
- 多线程/异步 请求.
- 通过 Flask 提供网页测试/添加接口.
- 友好的命令行参数支持.
- 采用方便的 pipenv 包管理.
- 通过代理调用短信接口, 支持http, socks4, socks5代理.
- 使用随机的User-Agent.
- 可指定轰炸次数, 轰炸间隔时间.
Quick Start
适用于小白
本项目已经使用 pyinstaller
打包成 EXE
可执行文件!免去部署 Python 环境的烦恼,适合用于小白白.
作者的打包环境为: Windows 10 x64 Python3.8
如果 Windows 系统不是 Windows 10 64位 版本,可能会运行失败! 如果出现异常报错请截图发 Issue.
- 下载 EXE 可执行文件
请移步到项目的 release页 下载 - 运行
- 在任意盘(除C盘外)中新建一个文件夹.将程序移动到其中. e.g.
Win
+R
打开cmd.输入存放的盘符.例如:E:
然后cd到文件夹,例如cd SMS
- 确认 cmd 路径是 EXE 所在路径后,cmd 输入:
smsboom_pyinstall.exe
,若出现命令提示,则说明脚本已正常运行. - 使用前必须更新一遍最新接口
ssl_
,请参见 issue 关闭代理软件再 update.- 对代理设置的说明, 小白可以暂时不看
- 传递参数,命令示例:
适用于大佬
下载项目
- 方法一:使用Git:
git clone https://github.com/AdminWhaleFall/SMSBoom.git/
墙国加速
git clone https://github.do/https://github.com/AdminWhaleFall/SMSBoom.git
- 方法二:点击下载项目压缩包并解压.
配置环境
前提条件: 请确保自己的电脑有 python3.x
的环境,推荐使用 3.8
及以上!
方案一: 有 Python3.8
环境的可以使用 pipenv
工具.
- 安装 pipenv 包管理工具.
pip install pipenv
- 为项目构建虚拟环境.
pipenv install # 仅使用轰//炸功能 pipenv install --dev # 使用 webui 调试接口功能.
- 尝试运行 smsboom.py
pipenv shell # 激活虚拟环境 python smsboom.py # linux
若无报错,输出帮助信息,则说明环境已经正确安装。若报错请使用方案二
方案二: 只有 Python3.X
环境的需要使用原生 pip
工具.
- 安装所需要的库
pip install -r requirements.txt # 仅使用轰//炸 pip install -r requirements-dev.txt # 使用 webui
- 尝试运行 smsboom.py
python smsboom.py
若无报错,输出帮助信息,则说明环境已经正确安装。
使用 Docker 运行
方式一: 一键运行
docker run --rm lanqsh/smsboom run -t 1 -p {PHONE} -i 1
方式二: 自建镜像
前提条件: 请确保当前环境已安装 Docker.
- 构建镜像
docker build -t whalefell/smsboom .
- 尝试运行
docker run --rm whalefell/smsboom:latest --help Usage: smsboom.py [OPTIONS] COMMAND [ARGS]... Options: --help Show this message and exit. Commands: asyncrun 以最快的方式请求接口(真异步百万并发) onerun 单线程(测试使用) run 传入线程数和手机号启动轰炸,支持多手机号 update 从 github 获取最新接口
运行
若使用虚拟环境,请先激活. pipenv shell
# 输出帮助信息 python smsboom.py --help Usage: smsboom.py [OPTIONS] COMMAND [ARGS]... Options: --help Show this message and exit. Commands: run 传入线程数和手机号启动轰//炸,支持多手机号 update 从 github 获取最新接口
- 启动轰//炸
帮助信息:
python smsboom.py run --help Usage: smsboom.py run [OPTIONS] 传入线程数和手机号启动轰//炸,支持多手机号 Options: -t, --thread INTEGER 线程数(默认64) -p, --phone TEXT 手机号,可传入多个再使用-p传递 [required] -f, --frequency INTEGER 执行次数(默认1次) -i, --interval INTEGER 间隔时间(默认60s) -e, --enable_proxy BOOLEAN 开启代理(默认关闭) --help Show this message and exit.
使用代理
本项目不能通过API自动获取代理, 你可以从下面的免费代理网站中手动获取代理, 或是选择使用自己的代理, 或是不使用代理.
将代理添加到 http_proxy.txt
socks4_proxy.txt
socks5_proxy.txt
三个文件中, 命令参数添加 -e
执行即可.
命令示例
启动64个线程,轰//炸一个人的手机号(198xxxxxxxx),只轰//炸一波。
python smsboom.py run -t 64 -p 198xxxxxxxx
启动64个线程,轰//炸一个人的手机号(198xxxxxxxx),启动循环轰//炸, 轮番轰//炸60次
python smsboom.py run -t 64 -p 198xxxxxxxx -f 60
启动64个线程,轰//炸一个人的手机号(198xxxxxxxx),启动循环轰//炸, 轮番轰//炸60次, 每次间隔30秒
python smsboom.py run -t 64 -p 198xxxxxxxx -f 60 -i 30
启动64个线程,轰//炸一个人的手机号(198xxxxxxxx),启动循环轰//炸, 轮番轰//炸60次, 每次间隔30秒, 开启代理列表进行轰炸
python smsboom.py run -t 64 -p 198xxxxxxxx -f 60 -i 30 -e
启动64个线程,轰//炸多个人的手机号(198xxxxxxxx,199xxxxxxxx),启动循环轰//炸, 轮番轰炸60次, 每次间隔30秒, 开启代理列表进行轰炸
python smsboom.py run -t 64 -p 198xxxxxxxx -p 199xxxxxxxx -f 60 -i 30 -e
Development
程序提供接口调试工具,但目前还不完善,欢迎前端大佬 PR。
调试工具以 Flask
为后端,vue
为前端,实现前后端分离。
目前只有测试接口,添加接口的功能。
Flask 前端调试
前提是已经根据前文 Quick Start 的方式安装好 pipenv 环境
pipenv shell # 激活虚拟环境 python run_flask_app.py start -p 9090 # 监听9090端口 提示ModuleNotFoundError: No module named 'xxx' 可使用pip install model_name
运行帮助:
Usage: run_flask_app.py [OPTIONS] COMMAND [ARGS]... Options: --help Show this message and exit. Commands: init 初始化数据库 json2sqlite 将json数据转为sqlite数据库 sqlite2json 将sqlite数据转为json start 启动 flask app
Usage: run_flask_app.py start [OPTIONS] 启动 flask app Options: -h, --host TEXT 监听地址 -p, --port INTEGER 监听端口 --help Show this message and exit.
默认监听 0.0.0.0:9090 地址,浏览器访问http://127.0.0.1:9090/admin/若无意外,就可以出现前端调试界面。