Web-Programming/PHP4, 5
[ SQL / 인젝션 공격 대비 / mysql_real_escape_string ]
[ SQL / 인젝션 공격 대비 / mysql_real_escape_string ]
SQL 인젝션
프로그램 부 에서 DB 로 질의 하는 QUERY문 을 공격자가 임의로 변조하여 허가되지 않은 자료나 관리자/회원 권한을 획득할 수 있는 공격입니다.
공격 예제
해결책
가변적으로 대입되는 쿼리문의 모든 요소를 mysql_real_escape_string() 이라는 함수를 이용하여 특수 문자를 escape 시켜야 합니다. 아래의 예제는 php.net 에서 권장하는 가장 좋은 방법의 예 입니다.
0) { echo "Product insertedn"; } } } else { echo "Fill the form propertyn"; } ?>보통, 기본적으로 Magic Quotes 설정에 의해 막아지고는 있으나 6.0 이상부터는 이 기능이 제거되니 의존하지 않기를 권장하고 있습니다.
에이빌더에서는 library_lite.class.php 내의 함수 sql_inj_get_safe_value, sql_inj_get_query 로 조치하고 있으며 지속으로 패턴을 추가하고 있습니다.
'Web-Programming > PHP4, 5' 카테고리의 다른 글
[ PHP / 4 / 5 / 자료형 비교표 ] gettype(), empty(), is_null(), isset(), boolean:if() (0) | 2011.12.22 |
---|---|
[php / 웹 프로그래밍 / 최적화 ] PHP 코드를 최적화하는 40가지 팁 (0) | 2011.11.18 |
[ 쿠키 / 세선 / 웹 프로그래밍 ] cookie 와 session 의 차이점 (0) | 2011.09.29 |
[ php / 웹 프로그래밍 ] Header의 사용법, 용도 (0) | 2011.09.19 |
난수 : 시리얼, 시디키 만들기 (0) | 2011.08.27 |
FOREACH POST - POST로 받은 값을 쉽게 받아보자! (0) | 2010.05.11 |
UpSide : WordPress Theme - php, css, js 템플릿 (0) | 2010.05.05 |
디렉토리 복사 PHP 함수 (0) | 2010.04.16 |
Cannot redeclare 에러 (0) | 2010.04.05 |
PHP 정규식 (0) | 2010.04.03 |
댓글