안녕하세요 저는 웹 사이트를 개발하고 침입 테스트를하고 있습니다. 그것은 나를 알고 만든 사람 CakePHP의 내장되어 있습니다 : 당신이 CakePHP의 ORM 방법을 사용 (예 : 발견 (등을)과) (저장) 경우SQL 인젝션을 테스트하는 정확한 방법
CakePHP는 이미 SQL 인젝션에 대해 당신을 보호하고 적절한 배열 표기법 (예 : . array ('field'=> $ value)).
그러나 SQL 주입 방지를 테스트하기 위해 입력 양식 필드에 입력 할 데이터가 확실하지 않습니다.
나는 간단한 VARCHAR 다음과 같은 테이블 이름 속성 한 -
categories: name
clients: address, county, country, name
items: name
statuses: name
이 SQL 문 형태로 입력하고, SQL 주입 시도를 테스트하는 올바른 방법이 될 제출시겠습니까? 양식에 데이터베이스를 입력 한 값이 제출 한 후
DROP TABLE "categories";
했다 :
DROP TABLE "categories";
난이이 범주를 떨어 뜨리지 않았다으로 웹 사이트는 시도 SQL 주입으로부터 보호되었음을 의미합니다 가정 할 수있다 내 데이터베이스에있는 테이블?
당신이 지침을 따르 독점적 ORM 방법을 사용 했을 참조하십시오? 그렇다면 응용 프로그램과 데이터베이스에 대한 액세스 보안, 출력 이스케이프, 세션 도용, SSL로 중요한 페이지 보안 및 무차별 암호 공격에 대한 완화와 같은 다른 문제를 살펴보십시오. – Ami
이것은 SQL Server에 대해 약간주의를 기울 였지만 제시된 개념과 아이디어는 항상 좋은 읽을 거리입니다. http : // www.sommarskog.se/dynamic_sql.html#SQL_injection – Bridge