[Tip] SQL Injection 공격 대응법

munilive
munilive

PHP에서 SQL Injection 공격에 대하여 간단하게 대응 할 수 있는 방법을 팁으로 공유합니다.
여러 가지 방법이 있겠지만 아래의 방법 정도만 해주어도 기초적인 SQL Injection 공격은 막을 수 있습니다.

  • 사용자가 입력하는 값은 모두 mysql_reql_escape_string()으로 감싸 처리한다.

  • 사용자가 입력하는 값이 정수(숫자)일 경우 (int)로 자료형으로 캐스팅해서 사용한다.

    $Number = (int)$_POST[Number];
  • $_SERVER 변수를 이용한 공격을 대비하여 REMOTE_ADDR, HTTP_REFERER, HTTP_USER_AGENT를 사용 할 때 mysql_real_escape_string()으로 감싸서 사용하기

    $remote_addr = mysql_real_escape_string($_SERVER[REMOTE_ADDR]);
    $http_referer = mysql_real_escape_string($_SERVER[HTTP_REFERER]);
    $http_user_agent = mysql_real_escape_string($_SERVER[HTTP_USER_AGENT]);
munilive

munilive

Backend Application Developer

Share

Comments

Related Posts

PHP 정규식 패턴 모음 preg 사용

PHP 정규식 패턴 모음 preg 사용

자주 사용되는 정규식 및 그누보드에서 사용하기 좋은 코드를 모아서 정리 하였다. 자주 업데이트 하지 않겠지만, 그래도 나중에 필요 할 때 찾아서 볼 수 있었으면 좋겠다. 사…

munilive munilive ·
그누보드4 아이디 변경 함수 - 모든 테이블의 아이디를 변경

그누보드4 아이디 변경 함수 - 모든 테이블의 아이디를 변경

그누보드 사용시 아이디값을 이메일등으로 사용하거나 아이디를 변경하게 하도록 하는 사이트들이 존재 한다. 그누보드에서는 아이디 값이 게시판테이블에서나 포인트등 에서 회원을 구분하…

munilive munilive ·
html selectbox 배열에 담긴 값으로 옵션 태그 만들기

html selectbox 배열에 담긴 값으로 옵션 태그 만들기

html selectbox의 options 들을 추가 할 때 하나하나 입력하면 귀찮다. 반복해서 사용하는 것은 매번 만들기 보다, 함수를 하나 만들어 처리 하면 편하다. 배열에 값…

munilive munilive ·