수석 고문을 위해 준비된 문을 사용하여 SQL 인젝션 취약점에 대한 수정을 자동으로 감지하고 제안하는 프로그램을 개발했습니다. 특히 PHP 용 mysqli 확장. SO 커뮤니티에 대한 제 질문은 다음과 같습니다. PHP 소스 코드에서 SQL을 감지하는 것이 바람직한 접근 방법은 무엇입니까?PHP 파일에서 SQL 구문을 분석하는 가장 좋은 방법은 무엇입니까?
기본적으로 SQL keywords (SELECT, INSERT, ...)
을 포함하는 열거 형을 사용했으며 각 행을 기본적으로 구문 분석하여 열거 형을 반복하여 SQL이 있는지 판별했습니다. 또한, 나는 파서가 잘못 html을 (예 : < \ select>) 감지하지 않았는지 확인했다.
이 솔루션은 정상적으로 작동했지만 지금은 좀 더 시간을내어 코드를 리팩토링하여 좀 더 우아하고 효율적인 솔루션을 사용하려고했습니다. . 그게 내가 내 프로그램을 작성 무엇으로 C#을를 사용하여 솔루션을 제한