1:需要两个项目
一个作为破解对象,即需要输入密码的对象
一个作为破解软件(以六位密码作为例子)
第一个破解对象
#include <iostream>
#include <Windows.h>
using namespace std;
int main(void) {
string pwd;
//当如果输入错误,就循环输入直到输入正确为止
while (1) {
cout << "请输入你的账号密码:" << endl;
cin >> pwd;
//将输入的账号和密码进行比对
if ((pwd == "000123")) {
break;
}
cout << "账号和密码输入错误,请点击回车重新输入.." << endl;
}
system("cls");
cout << "登录成功!请点击回车继续.." << endl;
system("pause");
system("cls");
cout << "1.网站404攻击" << endl;
cout << "2.网站篡改攻击" << endl;
cout << "3.网站攻击记录" << endl;
cout << "4.DNS攻击" << endl;
cout << "5.服务器重启" << endl;
system("pause");
return 0;
}
运行结果:
第二个破解软件
#include <iostream>
using namespace std;
int main(void) {
char pwd[63];//数字10个,字母52个,
char tmp[32];//保存密码流
int index = 0;
int n;
//保存10个数字
for (int i = 0; i <= 9; i++) {
pwd[index++] = '0'+ i;
}
//保存小写字母
for (int i = 0; i < 26; i++) {
pwd[index++] = i + 'a';
}
//保存大写字母
for (int i = 0; i < 26; i++) {
pwd[index++] = i + 'A';
}
pwd[index++] = '\0';
n = index;
//几位密码循环几次
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
for (int k = 0; k < n; k++) {
for (int L = 0; L < n; L++) {
for (int m = 0; m < n; m++) {
for (int o = 0; o < n; o++) {
tmp[0] = pwd[i];
tmp[1] = pwd[j];
tmp[2] = pwd[k];
tmp[3] = pwd[L];
tmp[4] = pwd[m];
tmp[5] = pwd[o];
tmp[6] = '\0';
cout << tmp << endl;
}
}
}
}
}
}
return 0;
}
结果:
第二步:将两个文件的exe放在同一个文件夹下面
然后cmd下执行:即可破解成功