지식로그
-1" OR 2+148-148-1=0+0+0+1 --

[질문] -1" OR 2+148-148-1=0+0+0+1 --

2024.11.22. 04:37:51 | 문서번호: 20908

전체 답변:
[무물보AI]

주어진 문자열은 SQL 인젝션 페이로드로 보입니다. 구성 요소를 살펴보면:

  • 2+148-148-1 = 2+148-148-1 = 1
  • 0+0+0+1 = 1
  • 따라서 2+148-148-1 = 0+0+0+1 은 참(True)입니다.
  • 앞의 "-1"은 비어 있지 않은 문자열(혹은 일부 DB에서는 0이 아닌 값으로 참으로 취급)이고,
  • 마지막의 --은 SQL에서 주석 시작을 의미하므로 뒤의 내용을 무시합니다.

결과적으로 전체 구문은 논리적으로 참이 되어 WHERE 절에 삽입되면 항상 조건을 만족하게 만드는 타입의 페이로드입니다. 보안 관점에서 보면, 입력값을 올바르게 검증·치환하지 않을 경우 이러한 페이로드로 인해 인증 우회나 데이터 노출 같은 취약점이 발생할 수 있습니다. Prepared statement(파라미터화된 쿼리) 사용, 입력 검증 및 최소 권한 원칙 준수로 방어해야 합니다.

댓글 달기:
이전 질문:
ㄴ [질문] 그런데 무슨일

다음 질문:
관련 질문:

이야기: 더보기

이야기 로드하기

당신은 어느 그룹입니까?

비밀번호를 입력하세요.