PHP 라이브러리 기타 도서관 SQL 주입을 방지하는 PHP 클래스 라이브러리
SQL 주입을 방지하는 PHP 클래스 라이브러리
<?php
class sqlsafe {
  private $getfilter = "'|(and|or)\b.+?(>|<|=|in|like)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  private $postfilter = "\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  private $cookiefilter = "\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  public function __construct() {
    foreach($_GET as $key=>$value){$this->stopattack($key,$value,$this->getfilter);}
    foreach($_POST as $key=>$value){$this->stopattack($key,$value,$this->postfilter);}
    foreach($_COOKIE as $key=>$value){$this->stopattack($key,$value,$this->cookiefilter);}
  }
  public function stopattack($StrFiltKey, $StrFiltValue, $ArrFiltReq){
    if(is_array($StrFiltValue))$StrFiltValue = implode($StrFiltValue);
    if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue) == 1){
      $this->writeslog($_SERVER["REMOTE_ADDR"]."    ".strftime("%Y-%m-%d %H:%M:%S")."    ".$_SERVER["PHP_SELF"]."    ".$_SERVER["REQUEST_METHOD"]."    ".$StrFiltKey."    ".$StrFiltValue);
      showmsg('您提交的参数非法,系统已记录您的本次操作!','',0,1);
    }
  }
  public function writeslog($log){
    $log_path = CACHE_PATH.'logs'.DIRECTORY_SEPARATOR.'sql_log.txt';
    $ts = fopen($log_path,"a+");
    fputs($ts,$log."\r\n");
    fclose($ts);
  }
}

이 클래스 라이브러리는 먼저 함수 매개변수를 구성한 다음 로그를 확인하고 작성하고 마지막으로 SQL 주입 로그를 확인합니다. SQL 주입 방지에 매우 유용한 PHP 클래스 라이브러리입니다


부인 성명

이 사이트의 모든 리소스는 네티즌이 제공하거나 주요 다운로드 사이트에서 재인쇄되었습니다. 소프트웨어의 무결성을 직접 확인하십시오! 이 사이트의 모든 리소스는 학습 참고용으로만 사용됩니다. 상업적 목적으로 사용하지 마시기 바랍니다. 그렇지 않으면 모든 결과에 대한 책임은 귀하에게 있습니다! 침해가 있는 경우 당사에 연락하여 삭제하시기 바랍니다. 연락처: admin@php.cn

관련 기사

PHP에서 SQL 주입을 방지하는 클래스 PHP에서 SQL 주입을 방지하는 클래스

25 Jul 2016

PHP에서 SQL 주입을 방지하는 클래스

SQL 주입을 방지하는 ASP.NET 필터 클래스 SqlFilter SQL 주입을 방지하는 ASP.NET 필터 클래스 SqlFilter

21 Jan 2017

이 문서에서는 POST, GET 및 쿠키를 통한 주입을 방지할 수 있는 SQL 주입을 방지하는 필터링 클래스 SqlFilter를 공유합니다.

SQL 주입을 방지하는 PHP+Mysql 방법 SQL 주입을 방지하는 PHP+Mysql 방법

19 Apr 2018

이 글은 PHP+Mysql에서 SQL 인젝션을 방지하는 방법을 소개하는데, 참고할만한 가치가 있는 내용입니다.

SQL 주입을 방지하는 PHP 코드 예제 SQL 주입을 방지하는 PHP 코드 예제

25 Jul 2016

SQL 주입을 방지하는 PHP 코드 예제

SQL 주입을 방지하는 PHP 간단한 코드 SQL 주입을 방지하는 PHP 간단한 코드

25 Jul 2016

SQL 주입을 방지하는 PHP 간단한 코드

PHP 웹사이트에서 SQL 주입을 방지하는 방법은 무엇입니까? PHP 웹사이트에서 SQL 주입을 방지하는 방법은 무엇입니까?

25 Jul 2016

PHP 웹사이트에서 SQL 주입을 방지하는 방법은 무엇입니까?

See all articles