SMSboom 短信轰炸!开源在GitHub的免费开源项目

 

SMSboom 开源项目 :【Github链接】【安装包链接

三件事

  1. 原作者 @whalefell 為保障自身安全及規避風險,於 2022/7/6 將本倉庫移交給我.至此,本倉庫所有事務與原作者無關.
  2. 介於本項目在簡中 GitHub 圈影響較大,請大家遵守自己所在國家地區的相關法律,違反法律者與開發者無關.
  3. 請大家理智甄別,獨立思考.

简体中文:

  1. 原作者 @whalefell 为保障自身安全及规避风险,于 2022/7/6 将本仓库移交给我.至此,本仓库所有事务与原作者无关.
  2. 介于本项目在简中 GitHub 圈影响较大,请大家遵守自己所在国家地区的相关法律,违反法律者与开发者无关.
  3. 请大家理智甄别,独立思考.

免责声明

  1. 若使用者滥用本项目,本人 无需承担 任何法律责任.
  2. 本程序仅供娱乐,源码全部开源,禁止滥用 和二次 贩卖盈利禁止用于商业用途.

Feature

  1. 通过自定义 api.json 的方式定义接口.
  2. 支持关键字替换. 时间戳 [timestamp] 手机号 [phone]
  3. 多线程/异步 请求.
  4. 通过 Flask 提供网页测试/添加接口.
  5. 友好的命令行参数支持.
  6. 采用方便的 pipenv 包管理.
  7. 通过代理调用短信接口, 支持http, socks4, socks5代理.
  8. 使用随机的User-Agent.
  9. 可指定轰炸次数, 轰炸间隔时间.

Quick Start

适用于小白

✨本项目已经使用 pyinstaller 打包成 EXE 可执行文件!免去部署 Python 环境的烦恼,适合用于小白白.

?作者的打包环境为: Windows 10 x64 Python3.8 如果 Windows 系统不是 Windows 10 64位 版本,可能会运行失败! 如果出现异常报错请截图发 Issue.

  1. 下载 EXE 可执行文件
    请移步到项目的 release页 下载
  2. 运行

    1. 在任意盘(除C盘外)中新建一个文件夹.将程序移动到其中. e.g.

    2. Win+R 打开cmd.输入存放的盘符.例如: E: 然后cd到文件夹,例如 cd SMS 

    3. 确认 cmd 路径是 EXE 所在路径后,cmd 输入:smsboom_pyinstall.exe,若出现命令提示,则说明脚本已正常运行. 

    4. 使用前必须更新一遍最新接口

    smsboom_pyinstall.exe update

    若更新接口出现错误 ssl_,请参见 issue 关闭代理软件再 update.

    1. 对代理设置的说明, 小白可以暂时不看

    2. 传递参数,命令示例:

    启动64个线程,轰//炸一个人的手机号(198xxxxxxxx),只轰//炸一波。

    smsboom_pyinstall.exe run -t 64 -p 198xxxxxxxxx

    启动64个线程,轰//炸一个人的手机号(19xxxxxxx),启动循环轰//炸, 轮番轰//炸60次

    smsboom_pyinstall.exe run -t 64 -p 198xxxxxxxxx -f 60

    启动64个线程,轰//炸一个人的手机号(19xxxxxxx),启动循环轰//炸, 轮番轰//炸60次, 每次间隔30秒

    smsboom_pyinstall.exe run -t 64 -p 198xxxxxxxxx -f 60 -i 30

    启动64个线程,轰//炸一个人的手机号(19xxxxxxx),启动循环轰//炸, 轮番轰//炸60次, 每次间隔30秒, 开启代理列表进行轰炸

    smsboom_pyinstall.exe run -t 64 -p 198xxxxxxxxx -f 60 -i 30 -e

    启动64个线程,轰//炸多个人的手机号(138xxx,139xxxx),启动循环轰//炸, 轮番轰炸60次, 每次间隔30秒, 开启代理列表进行轰炸

    smsboom_pyinstall.exe run -t 64 -p 138xxxxxxxx -p 139xxxxxxxx -f 60 -i 30 -e

适用于大佬

下载项目

  • 方法一:使用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 工具.

  1. 安装 pipenv 包管理工具.
pip install pipenv
  1. 为项目构建虚拟环境.
pipenv install  # 仅使用轰//炸功能
pipenv install --dev # 使用 webui 调试接口功能.
  1. 尝试运行 smsboom.py
pipenv shell # 激活虚拟环境
python smsboom.py  # linux

若无报错,输出帮助信息,则说明环境已经正确安装。若报错请使用方案二

方案二: 只有 Python3.X 环境的需要使用原生 pip 工具.

  1. 安装所需要的库
pip install -r requirements.txt # 仅使用轰//炸
pip install -r requirements-dev.txt # 使用 webui
  1. 尝试运行 smsboom.py
python smsboom.py

若无报错,输出帮助信息,则说明环境已经正确安装。

使用 Docker 运行

方式一: 一键运行
docker run --rm lanqsh/smsboom run -t 1 -p {PHONE} -i 1
方式二: 自建镜像

前提条件: 请确保当前环境已安装 Docker.

  1. 构建镜像
docker build -t whalefell/smsboom .
  1. 尝试运行
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自动获取代理, 你可以从下面的免费代理网站中手动获取代理, 或是选择使用自己的代理, 或是不使用代理.

https://proxyscrape.com/free-proxy-list

https://openproxy.space/list

将代理添加到 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/若无意外,就可以出现前端调试界面。