찾다

 >  Q&A  >  본문

java - 如何防止sql注入

PHP中文网PHP中文网2807일 전1352

모든 응답(15)나는 대답할 것이다

  • ringa_lee

    ringa_lee2017-04-17 16:25:38

    일반적으로 매개변수화된 프로시저나 저장 프로시저는 괜찮습니다

    회신하다
    0
  • 黄舟

    黄舟2017-04-17 16:25:38

    可注入的sql:
    $id=$_REQUEST['id'];
    $name=$_REQUEST['name'];
    id=$id인 회원에서 *를 선택하세요.
    id='".$id."'"인 회원에서 *를 선택하세요;
    다음인 회원에서 *를 선택하세요. name='".$name."'";
    불可注入:
    id='".intval($id)."'";
    name이 있는 멤버에서 *를 선택하세요. =".sql_escape($name);

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-17 16:25:38

    사용자 입력을 필터링하고, 유형 및 크기를 제한하고, SQL 문을 매개변수화합니다. 또한 웹 서비스의 매개변수 취약점도 고려해야 합니다.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-17 16:25:38

    JavaEE의 ReadyStatement 인터페이스를 사용하면 SQL 주입을 쉽게 방지할 수 있으며, 다양한 DataBase 제조업체의 드라이버에서 이를 잘 구현했습니다. Druid 연결 풀은 SQL을 필터링하여 주입을 방지하는 데에도 도움이 됩니다. Jenkins는 findBugs와 같은 일부 플러그인과 협력하여 가능한 SQL 주입 동작을 찾을 수 있습니다.

    회신하다
    0
  • PHPz

    PHPz2017-04-17 16:25:38

    1/프런트엔드 입력은 jsoup를 사용하여 필터링됩니다. jsoup은 다양한 필터링 규칙을 사용자 정의할 수도 있습니다.
    2/ibatis와 같은 ORM 프레임워크를 사용하여 SQL 실행 매개변수를 바인딩합니다.

    회신하다
    0
  • 취소회신하다