Home  >  Article  >  Web Front-end  >  javascript dictionary detection username tool_javascript skills

javascript dictionary detection username tool_javascript skills

WBOY
WBOYOriginal
2016-05-16 19:25:33980browse


body {font-size: 10pt; background-color:#D4D0C8}
td {font-size: 9pt}








Program author: Zhai Zhenkai Note: If it cannot be used, or the result shows a timeout, please Download this page to your local computer for use.

    
        
        
    
    
        
        
    
    
        
        
    
    
        
        
    
    
        
        
    
探测地址
        
失败包涵标记 
测试单个值
         
选择字典文件
        
        
        
        
        
高级参数
        每次探测: 个  
        缓冲时间: 秒  
        进度:  
        探测数量:
        
Detection Settings<script> <br><br>/* <BR>程序标题:javascript字典探测用户名工具 <BR>发布时间:2006年8月 <BR>文章作者:翟振凯 (小琦) <BR>作者网站:http://www.xiaoqi.net <BR>作者论坛:http://www.tdqy.com <BR>演示地址:http://www.xiaoqi.net/zuopin/js_user_swf.htm <BR>QQ:22336848 53353866 <BR>关于本文: <BR> 授人予鱼,不如授人予渔。本程序的核心代码处,都有详细的注解, <BR> 目地是让大家了解一个程序的开发过程和这个程序功能的实现原理, <BR> 而不仅仅是给大家提供一个这样的工具。希望看过本文后的朋友会有 <BR> 所收获,能和我共同分享用javascript编写程序的乐趣。 <BR>*/ <br><br>//尝试用IE浏览器的方式创建XMLHttpRequest对象 <BR>var xmlhttp = null; <BR>try <BR>{ <BR> xmlhttp = new ActiveXObject("MSXML2.XMLHTTP"); <BR>} <BR>catch(e) <BR>{ <BR> try <BR> { <BR> xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); <BR> } <BR> catch(e){ <BR> alert("您的浏览器不能创建XMLHttpRequest对象,无法使用此程序!"); <BR> } <BR>} <BR>//尝试用IE浏览器的方式创建XMLHttpRequest对象结束 <br><br>/* <BR>翟振凯注:MSXML2.XMLHTTP 和 Microsoft.XMLHTTP 都是微软的XMLHTTP控件,只是版本不同。 <BR> IE的安全级别如果不是太高,微软的XMLHTTP控件是可以跨域获取数据的。 <BR> 因为 Mozilla Firefox 浏览器的 XMLHttpRequest() 不能跨域获取数据,我们就不用 XMLHttpRequest() 方法创建XMLHTTP对象了。 <BR>*/ <br><br><BR>//对返回的中文编码处理 作者:翟振凯 <BR>function Rec_Html(Html) <BR>{ <BR> var Rec=new ActiveXObject("ADODB.RecordSet"); <BR> Rec.Fields.Append("xiaoqi",201,1); <BR> Rec.Open(); <BR> Rec.AddNew(); <BR> Rec(0).AppendChunk(Html); <BR> Rec.Update(); <BR> return Rec(0).Value; <BR> Rec.Close(); <BR>} <BR>//对返回的中文编码处理结束 <br><br><BR>//开始探测 参数为要探测的当前值 <BR>function geturl(id) <BR>{ <BR>try{ <BR> xmlhttp.open("GET",url.value+id,false);//定义数据传送方式,服务网页的URL(探测地址+探测值),是否同步执行 <BR> xmlhttp.onreadystatechange = function() {//xmlhttp 触发事件 <br><br> if(xmlhttp.readyState==4)//xmlhttp对象状态如果为完成 <BR> { <BR> if(xmlhttp.status==200) //如果服务器返回的状态码为200(成功) <BR> { <br><br> //对结果的中文编码转换判断 <BR> if(err.value.replace(/[^\W]/g,'').length=0) <BR> /*关于转换判断的注: <BR> 例如:"翟振凯".replace(/[^\W]/g,'').length 返回结果 3 <BR> "翟振凯22336848".replace(/[^\W]/g,'').length 返回结果 3 <BR> "xiaoqi22336848".replace(/[^\W]/g,'').length 返回结果 0 <BR> "小琦22336848".replace(/[^\W]/g,'').length 返回结果 2 <BR> replace(/[^\W]/g,'')的功能是把字符串里的英文和数字都清除掉。 <BR> */ <BR> { <BR> Html=xmlhttp.responseText;//不转换 <BR> } <BR> else <BR> { <BR> Html=Rec_Html(xmlhttp.responseBody);//转换 <BR> } <BR> //对结果的中文编码转换判断结束 <br><br> <BR> // 根据判断依据区分可用或不可用的值! <BR> if(Html.indexOf(err.value,0)<0) <BR> { <BR> x_1.innerHTML=x_1.innerHTML+"<nobr> "+id;//输出可用值 <BR> } <BR> else <BR> { <BR> x_2.innerHTML=x_2.innerHTML+"<nobr> "+id;//输出不可用值 <BR> } <BR> // 根据判断依据区分可用或不可用的值! <BR> } <BR> } <BR> } <BR> xmlhttp.send(); <BR> } <BR>catch(e) <BR>{ <BR>x_2.innerHTML=x_2.innerHTML+"<nobr> "+id+"超时!";//输出异常或超时的值。 <BR>} <BR>} <BR>//开始探测结束 <br><br><BR>//载入本地字典文件,并把内容定义为数组 <BR>function kaishi(){ <BR> fileFullPath=dic_url.value; <BR> xmlhttp.open("GET",fileFullPath,false);//载入字典文件方法 <BR> xmlhttp.send(); <br><br> Html=Rec_Html(xmlhttp.responseBody);//中文编码转换 <BR> dic=Html.split('\r\n');//以换行符将载入的字典内容转换为数组 <BR> sl.value=dic.length;//告诉用户要探测的次数(数组大小) <br><br>xunhuan()//成功载入后开始循环探测。 <BR>} <BR>//载入本地字典文件,并把内容定义为数组结束 <br><br><BR>//循环探测 <BR>function xunhuan() <BR>{ <BR> bar=parseInt(jd.value);//将进度值转换为整数 <BR> if(bar<sl.value)//判断是否探测完 <BR> { <BR> for(i=0;i<parseInt(jc.value);i++){//设定探测线程 <BR> geturl(dic[bar+i]);//从数组内取值进行探测 <BR> } <br><br> jd.value=bar+parseInt(jc.value);//累加探测进度,并向用户呈现当前进度 <BR> setTimeout("xunhuan()",parseInt(hc.value*1000));//根据缓冲时间来进行重复循环探测 <BR> } <BR> else//如果进度不小于要探测的次数,就向用户返回探测完成的结果。 <BR> { <BR> alert("探测完成!"); <BR> } <BR>} <BR>//循环探测结束 <br><br><BR>//暂停探测函数 <BR>function pause(obj) <BR>{ <BR> if(obj.value=='暂停') <BR> { <BR> obj.temp=hc.value;//记忆原来的缓冲时间。 <BR> hc.value=5000;//将缓冲时间设置为5000秒,这个值自己可以修改。 <BR> obj.value='继续';//改变按钮显示状态 <BR> } <BR> else <BR> { <BR> hc.value=obj.temp;//提取原来的缓冲时间。 <BR> obj.value='暂停';//改变按钮显示状态 <BR> kaishi()//继续探测 <BR> } <BR>} <BR>//暂停探测函数结束 <br><br><BR>function ck()//单个值探测验证检查 <BR>{ <BR> if (url.value.length<5){alert('请输入要探测地址!');return}; <BR> if (id_one.value.length<1){alert('请输入要探测的值!');return}; <BR> geturl(id_one.value) <BR>} <br><br>function ck1()//批量值探测验证检查 <BR>{ <BR> if (url.value.length<5){alert("请输入要探测地址!");return} <BR> if (err.value.length<1){alert("请输入不可用标记!");return} <BR> if (dic_url.value.length<5){alert("请先选择字典文件!");return} <BR> jd.value=0; <BR> kaishi() <BR>} <BR></script>                                                                                                                                                                onclick="ck();"> td>Advanced parameters  
Detection address
Failure tolerance mark
Select dictionary file
 
 Each detection: pieces Buffering time : Seconds Progress: Number of detections:




Available values:



Unavailable values:



 

Appendix:



    
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
    
        
        
        
        
    
测试字典文件地址
        http://www.xiaoqi.net/zuopin/dic.txt
网站名 入口 不可用标记 备注
百度用户注册 http://passport.baidu.com/?check_username&un= false  
百度空间注册 http://hi.baidu.com/sys/checkurl/item/ false 要先用百度用户登陆
网易通行证注册 http://reg.163.com/register/checkssn.jsp?username= 对不起  
新浪通行证
        
登录名被占用  
测试网站用户密码暴力破解
        http://www.xiaoqi.net/zuopin/login.asp?username=翟振凯&password=
不正确  
测试网站用户密码暴力破解
        http://www.xiaoqi.net/zuopin/login.asp?username=小琦&password=
不正确  
<script> <br><br>/* <BR>程序标题:javascript字典探测用户名工具 <BR>发布时间:2006年8月 <BR>文章作者:翟振凯 (小琦) <BR>作者网站:http://www.xiaoqi.net <BR>作者论坛:http://www.tdqy.com <BR>演示地址:http://www.xiaoqi.net/zuopin/js_user_swf.htm <BR>QQ:22336848 53353866 <BR>关于本文: <BR> 授人予鱼,不如授人予渔。本程序的核心代码处,都有详细的注解, <BR> 目地是让大家了解一个程序的开发过程和这个程序功能的实现原理, <BR> 而不仅仅是给大家提供一个这样的工具。希望看过本文后的朋友会有 <BR> 所收获,能和我共同分享用javascript编写程序的乐趣。 <BR>*/ <br><br>//尝试用IE浏览器的方式创建XMLHttpRequest对象 <BR>var xmlhttp = null; <BR>try <BR>{ <BR> xmlhttp = new ActiveXObject("MSXML2.XMLHTTP"); <BR>} <BR>catch(e) <BR>{ <BR> try <BR> { <BR> xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); <BR> } <BR> catch(e){ <BR> alert("您的浏览器不能创建XMLHttpRequest对象,无法使用此程序!"); <BR> } <BR>} <BR>//尝试用IE浏览器的方式创建XMLHttpRequest对象结束 <br><br>/* <BR>翟振凯注:MSXML2.XMLHTTP 和 Microsoft.XMLHTTP 都是微软的XMLHTTP控件,只是版本不同。 <BR> IE的安全级别如果不是太高,微软的XMLHTTP控件是可以跨域获取数据的。 <BR> 因为 Mozilla Firefox 浏览器的 XMLHttpRequest() 不能跨域获取数据,我们就不用 XMLHttpRequest() 方法创建XMLHTTP对象了。 <BR>*/ <br><br><BR>//对返回的中文编码处理 作者:翟振凯 <BR>function Rec_Html(Html) <BR>{ <BR> var Rec=new ActiveXObject("ADODB.RecordSet"); <BR> Rec.Fields.Append("xiaoqi",201,1); <BR> Rec.Open(); <BR> Rec.AddNew(); <BR> Rec(0).AppendChunk(Html); <BR> Rec.Update(); <BR> return Rec(0).Value; <BR> Rec.Close(); <BR>} <BR>//对返回的中文编码处理结束 <br><br><BR>//开始探测 参数为要探测的当前值 <BR>function geturl(id) <BR>{ <BR>try{ <BR> xmlhttp.open("GET",url.value+id,false);//定义数据传送方式,服务网页的URL(探测地址+探测值),是否同步执行 <BR> xmlhttp.onreadystatechange = function() {//xmlhttp 触发事件 <br><br> if(xmlhttp.readyState==4)//xmlhttp对象状态如果为完成 <BR> { <BR> if(xmlhttp.status==200) //如果服务器返回的状态码为200(成功) <BR> { <br><br> //对结果的中文编码转换判断 <BR> if(err.value.replace(/[^\W]/g,'').length=0) <BR> /*关于转换判断的注: <BR> 例如:"翟振凯".replace(/[^\W]/g,'').length 返回结果 3 <BR> "翟振凯22336848".replace(/[^\W]/g,'').length 返回结果 3 <BR> "xiaoqi22336848".replace(/[^\W]/g,'').length 返回结果 0 <BR> "小琦22336848".replace(/[^\W]/g,'').length 返回结果 2 <BR> replace(/[^\W]/g,'')的功能是把字符串里的英文和数字都清除掉。 <BR> */ <BR> { <BR> Html=xmlhttp.responseText;//不转换 <BR> } <BR> else <BR> { <BR> Html=Rec_Html(xmlhttp.responseBody);//转换 <BR> } <BR> //对结果的中文编码转换判断结束 <br><br> <BR> // 根据判断依据区分可用或不可用的值! <BR> if(Html.indexOf(err.value,0)<0) <BR> { <BR> x_1.innerHTML=x_1.innerHTML+"<nobr> "+id;//输出可用值 <BR> } <BR> else <BR> { <BR> x_2.innerHTML=x_2.innerHTML+"<nobr> "+id;//输出不可用值 <BR> } <BR> // 根据判断依据区分可用或不可用的值! <BR> } <BR> } <BR> } <BR> xmlhttp.send(); <BR> } <BR>catch(e) <BR>{ <BR>x_2.innerHTML=x_2.innerHTML+"<nobr> "+id+"超时!";//输出异常或超时的值。 <BR>} <BR>} <BR>//开始探测结束 <br><br><BR>//载入本地字典文件,并把内容定义为数组 <BR>function kaishi(){ <BR> fileFullPath=dic_url.value; <BR> xmlhttp.open("GET",fileFullPath,false);//载入字典文件方法 <BR> xmlhttp.send(); <br><br> Html=Rec_Html(xmlhttp.responseBody);//中文编码转换 <BR> dic=Html.split('\r\n');//以换行符将载入的字典内容转换为数组 <BR> sl.value=dic.length;//告诉用户要探测的次数(数组大小) <br><br>xunhuan()//成功载入后开始循环探测。 <BR>} <BR>//载入本地字典文件,并把内容定义为数组结束 <br><br><BR>//循环探测 <BR>function xunhuan() <BR>{ <BR> bar=parseInt(jd.value);//将进度值转换为整数 <BR> if(bar<sl.value)//判断是否探测完 <BR> { <BR> for(i=0;i<parseInt(jc.value);i++){//设定探测线程 <BR> geturl(dic[bar+i]);//从数组内取值进行探测 <BR> } <br><br> jd.value=bar+parseInt(jc.value);//累加探测进度,并向用户呈现当前进度 <BR> setTimeout("xunhuan()",parseInt(hc.value*1000));//根据缓冲时间来进行重复循环探测 <BR> } <BR> else//如果进度不小于要探测的次数,就向用户返回探测完成的结果。 <BR> { <BR> alert("探测完成!"); <BR> } <BR>} <BR>//循环探测结束 <br><br><BR>//暂停探测函数 <BR>function pause(obj) <BR>{ <BR> if(obj.value=='暂停') <BR> { <BR> obj.temp=hc.value;//记忆原来的缓冲时间。 <BR> hc.value=5000;//将缓冲时间设置为5000秒,这个值自己可以修改。 <BR> obj.value='继续';//改变按钮显示状态 <BR> } <BR> else <BR> { <BR> hc.value=obj.temp;//提取原来的缓冲时间。 <BR> obj.value='暂停';//改变按钮显示状态 <BR> kaishi()//继续探测 <BR> } <BR>} <BR>//暂停探测函数结束 <br><br><BR>function ck()//单个值探测验证检查 <BR>{ <BR> if (url.value.length<5){alert('请输入要探测地址!');return}; <BR> if (id_one.value.length<1){alert('请输入要探测的值!');return}; <BR> geturl(id_one.value) <BR>} <br><br>function ck1()//批量值探测验证检查 <BR>{ <BR> if (url.value.length<5){alert("请输入要探测地址!");return} <BR> if (err.value.length<1){alert("请输入不可用标记!");return} <BR> if (dic_url.value.length<5){alert("请先选择字典文件!");return} <BR> jd.value=0; <BR> kaishi() <BR>} <BR></script> Test dictionary file address   http://www.xiaoqi.net/zuopin/dic.txt Website name Entrancetd>  Unavailable mark Remarks  Baidu user registration  http://passport.baidu.com/?check_username&un=  false Baidu space registration http://hi.baidu.com/sys/checkurl/item/ false You need to log in with Baidu user first NetEase Pass registration http://reg.163.com/register/checkssn.jsp?username= Sorry Sina Pass "83">The login name is occupied      Test website user password brute force cracking     http://www.xiaoqi.net/zuopin/login.asp?username=Zhai Zhenkai&password=  Incorrect        Test website user password brute force cracking http://www.xiaoqi.net/zuopin/login.asp?username=Xiaoqi &password=  Incorrect   table>
 


Program author: Zhai Zhenkai Development date: August 2006

Author website: http://www.xiaoqi.net

Demo address: http://www.xiaoqi.net/zuopin/js_user_swf.htm

Program package download address: http://www. xiaoqi.net/zuopin/js_user.rar

QQ:22336848





Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn