三个白帽条条大路通罗马系列2之二进制题分析
delete v5;
}
}
if (i
{
break;
}
}
}
void main()
{
char m2[17]="b@@tS@BX@K@dn@@X",*p,*q;
int in1=0,in2=0,in3=0,in4=0;
q=m2;
get(q,0,1,2); //分段hash 参数分别为字符串 序号 m2里需要填充的字符坐标
q+=4;
get(q,1,1,0);
q+=4;
get(q,2,0,2);
q+=4;
get(q,3,1,2); //到这里infos就得到了所有满足第一次HASH结果的可能的值
char temp1[15],temp2[15],temp3[15],temp4[15];
for(in1=0;;in1++) //暴力枚举 所有组合,查找满足第二次条件的值
{
if (!infos[0][in1].hash)
{
break;
}
strcpy(temp1,infos[0][in1].hash);
for (in2=0;;in2++)
{
strcpy(temp2,temp1);
if (!infos[1][in2].hash)
{
break;
}
strcat(temp2,infos[1][in2].hash);
p=temp2;
if (!check2(p))
{
continue;
}
for (in3=0;;in3++)
{
strcpy(temp3,temp2);
if (!infos[2][in3].hash)
{
break;
}
strcat(temp3,infos[2][in3].hash);
p=temp3+4;
if (!check2(p))
{
continue;
}
for (in4=0;;in4++)
{
strcpy(temp4,temp3);
if (!infos[3][in4].hash)
{
break;
}
【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。