热门关键字:   网站安全  黑客攻防  安全漏洞  系统安全  网络安全
站外
广告
域名申请虚拟主机 信息安全 域名注册 云主机 网络安全技术 企业网络安全 站外
广告
文字广告位招租 文字广告位招租 文字广告位招租 文字广告位招租 云安全

php云人才系统 注入漏洞

发布时间:2014-02-21 10:59文章来源:wooyun文章作者:Matt 点击次数:
摘要:漏洞作者: Matt 提交时间: 2013-11-22 17:43 公开时间: 2014-02-20 17:44 漏洞类型: SQL注射漏洞 详细说明: php云人才系统 注入漏洞 tenpay的KEY没有初始化 导致的注入漏洞! /api/tenpay/return_url.php require_once(dirname(dirname(dirname(__FILE_...

漏洞作者: Matt

提交时间: 2013-11-22 17:43
公开时间: 2014-02-20 17:44

漏洞类型: SQL注射漏洞

详细说明:

php云人才系统 注入漏洞

tenpay的KEY没有初始化

导致的注入漏洞!

 

 

  1. /api/tenpay/return_url.php 
  2.  
  3. require_once(dirname(dirname(dirname(__FILE__)))."/data/db.config.php"); 
  4.  
  5. require_once(dirname(dirname(dirname(__FILE__)))."/include/mysql.class.php"); 
  6.  
  7. $db = new mysql($db_config['dbhost'], $db_config['dbuser'], $db_config['dbpass'], $db_config['dbname'], ALL_PS, $db_config['charset']); 
  8.   
  9. /* 密钥 */ 
  10.  
  11. $key =$tenpay[sy_tenpaycode]; 
  12.  
  13. //密钥没有定义 

=========

tenpay_data.php

 

  1. <?php 
  2.  
  3. /* 
  4.  
  5. * Created on 2012 
  6.  
  7. * Link for shyflc@qq.com 
  8.  
  9. * This PHPYun.Rencai System Powered by PHPYun.com 
  10.  
  11. */ 
  12.  
  13. $tenpaydata=array("sy_weburl"=>"http://www.job.com","sy_tenpayid"=>"","sy_tenpaycode"=>"")//没有定义KEY 所以是空~~ 
  14.  
  15.  
  16. ?> 
  17.  
  18. ========= 
  19.  
  20. /* 创建支付应答对象 */ 
  21.  
  22. $resHandler = new PayResponseHandler(); 
  23.  
  24. $resHandler->setKey($key);//还是key没有初始化~~ 
  25.  
  26.   
  27.  
  28. //判断签名 
  29.  
  30. if($resHandler->isTenpaySign()) {//验证过程 
  31.  
  32. /**********************************3 
  33.  
  34. function isTenpaySign() { 
  35.  
  36. $cmdno = $this->getParameter("cmdno"); 
  37.  
  38. $pay_result = $this->getParameter("pay_result"); 
  39.  
  40. $date = $this->getParameter("date"); 
  41.  
  42. $transaction_id = $this->getParameter("transaction_id"); 
  43.  
  44. $sp_billno = $this->getParameter("sp_billno"); 
  45.  
  46. $total_fee = $this->getParameter("total_fee"); 
  47.  
  48. $fee_type = $this->getParameter("fee_type"); 
  49.  
  50. $attach = $this->getParameter("attach"); 
  51.  
  52. $key = $this->getKey(); 
  53.  
  54.   
  55.  
  56. $signPars = ""
  57.  
  58. //组织签名串 
  59.  
  60. $signPars = "cmdno=" . $cmdno . "&" . 
  61.  
  62. "pay_result=" . $pay_result . "&" . 
  63.  
  64. "date=" . $date . "&" . 
  65.  
  66. "transaction_id=" . $transaction_id . "&" . 
  67.  
  68. "sp_billno=" . $sp_billno . "&" . 
  69.  
  70. "total_fee=" . $total_fee . "&" . 
  71.  
  72. "fee_type=" . $fee_type . "&" . 
  73.  
  74. "attach=" . $attach . "&" . 
  75.  
  76. "key=" . $key; 
  77.  
  78.   
  79.  
  80. $sign = strtolower(md5($signPars));//key是空 其他都是可控 我们之间就可以生成key 所以验证形同虚设 没有设置key的时候 
  81.  
  82. ***********************************/ 
  83.  
  84.   
  85.  
  86. //交易单号 
  87.  
  88. $transaction_id = $resHandler->getParameter("transaction_id"); 
  89.  
  90.   
  91.  
  92. //本站单号 
  93.  
  94. $sp_billno = $resHandler->getParameter("sp_billno"); 
  95.  
  96.   
  97.  
  98. //金额,以分为单位 
  99.  
  100. $total_fee = $resHandler->getParameter("total_fee"); 
  101.  
  102.  
  103. //支付结果 
  104.  
  105. $pay_result = $resHandler->getParameter("pay_result"); 
  106.  
  107. //类型 
  108.  
  109. $attach = $resHandler->getParameter("attach"); 
  110.  
  111. if( "0" == $pay_result ) { 
  112.  
  113. //------------------------------ 
  114.  
  115. //处理业务开始 
  116.  
  117. //------------------------------ 
  118. //注意交易单不要重复处理 
  119.  
  120. //注意判断返回金额 
  121.  
  122. //处理本站信息开始 
  123. echo "select * from `".$db_config["def"]."company_order` where `order_id`='$sp_billno'"; 
  124.  
  125. $sql=$db->query("select * from `".$db_config["def"]."company_order` where `order_id`='$sp_billno'"); 
  126.  
  127. $row=mysql_fetch_array($sql); 

漏洞证明:

测试方法

http://www.yunsec.net/yun3/api/tenpay/return_url.php?sign=ba7b763f604fb46432eac7fb601c55c1&sp_billno=1%27&pay_result=0
 

php云人才系统 注入漏洞

 

标签分类:

上一篇:记事狗微博二次注射漏洞
下一篇:siteserver最新版3.6.4 sql inject 漏洞