Heim > CMS-Tutorial > PHPCMS > PHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem

PHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem

爱喝马黛茶的安东尼
Freigeben: 2019-11-21 10:43:24
nach vorne
3521 Leute haben es durchsucht

PHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem

Über den Schwachstellenbehebungsplan für die Alibaba Cloud-Eingabeaufforderung „phpcms v9 Wide Byte Injection Problem“

简介:
漏洞名称:phpcms v9宽字节注入问题
补丁文件:www/phpcms/modules/pay/respond.php
补丁来源:云盾自研
漏洞描述:phpcmsv9.5.9以后版本开始默认使用mysqli支持,在phpcms/modules/pay/respond.php中,因为代码逻辑不够严谨,
导致宽字节注入。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,
如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了该漏洞,云盾依然报告存在
漏洞,遇到该情况可选择忽略该漏洞提示】
…
阿里云漏洞提示。
Nach dem Login kopieren

Lösung:

1. Öffnen Sie www/phpcms/modules/pay/respond.php, etwa Zeile 14 des Codes;

2 Der folgende Code lautet wie folgt:

public function respond_get() { 
 if ($_GET['code']){ 
      $code = mysql_real_escape_string($_GET['code']);//注意修改
      $payment = $this->get_by_code($code);//注意修改
      if(!$payment) showmessage(L('payment_failed')); 
      $cfg = unserialize_config($payment['config']); 
      $pay_name = ucwords($payment['pay_code']); 
      pc_base::load_app_class('pay_factory','',0); 
      $payment_handler = new pay_factory($pay_name, $cfg); 
      $return_data = $payment_handler->receive(); 
      if($return_data) { 
          if($return_data['order_status'] == 0) {              
              $this->update_member_amount_by_sn($return_data['order_id']); 
          } 
          $this->update_recode_status_by_sn($return_data['order_id'],$return_data['order_status']); 
          showmessage(L('pay_success'),APP_PATH.'index.php?m=pay&c=deposit'); 
      } else { 
          showmessage(L('pay_failed'),APP_PATH.'index.php?m=pay&c=deposit'); 
      } 
  } else { 
      showmessage(L('pay_success')); 
  }
}
Nach dem Login kopieren

Der hinzugefügte Code, das Screenshot-Beispiel, lautet wie folgt:

PHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem

3 Laden Sie dann den geänderten Code hoch Datei an den entsprechenden Dateispeicherort des Servers übertragen, direkt überschreiben;

4. Melden Sie sich abschließend beim Alibaba Cloud-Backend an und klicken Sie auf „Überprüfen“ (Screenshot unten), um die Schwachstellenreparatur abzuschließen.

PHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem

Oben geht es um die Behebung der Schwachstelle „phpcms v9 Wide Byte Injection Problem“.

PHP chinesische Website, eine große Anzahl kostenloser PHPCMS-Tutorials, willkommen zum Online-Lernen!

Das obige ist der detaillierte Inhalt vonPHPCMS-Schwachstelle v9 Wide-Byte-Injection-Problem. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage