strcmp(1st_string, 2nd_string)
이런 형식으로 쓰이며 비교하는 문자열이 같다면 0을 반환하고 일치하지 않다면 1을 반환한다.
대소문자를 구별하기 때문에 SQL Injection에도 취약한 함수라고 한다.
구글링 중 php strcmp() 함수 취약점을 검색하니 되게 많은 정보를 얻을 수 있었다.
검색 중 이 도표를 발견하였고
==
으로 느슨한 비교를 할 경우에 취약점이 발생한다.
문자열을 인자로 넣어야하는 곳에 배열
을 넣었을 경우에 반환값이 0
이 나오는 취약점
이 존재한다.
따라서 개발자도구를 키고
password를 배열 password[]로 바꿔주고 아무 값이나 입력하여 strcmp 비교시 무조건 0이 반환되게 하면 플래그값을 얻을 수 있었다.
Uploaded by Notion2Tistory v1.1.0