phpreg

DH Park·2025년 8월 20일


닉네임과 패스워드를 찾아 입력하여, 시스템 명령을 실행하여 플래그를 찾는 문제이다.


문제 파일을 보면 name, pw가 그대로 나와있고, 정규 표현식 또한 나와있다.


nyang을 필터링하기 때문에 닉네임은 nyang을 nynyangang으로 필터링 우회를 수행한다.
패스워드의 정규식을 보면,

\d: 0-9중 하나의 숫자
\@: @ 그대로
\d{2,3}: 인덱스 2,3에 아무 숫자를 작성한다.
(31): 3과 1을 작성한다.
[^0-8\"]: 0-8 제외한 문자 작성 (ex. 9)
!: ! 그대로
뒤에 +1+13은 그대로 작성한다.


step 2로 넘어갈 수 있다.


플래그가 ../dream/flag.txt에 있으므로 cat으로 내용을 보도록 한다.


에러가 발생한다. 파일 이름에 *을 넣어 우회해 보자.


fla*.txt 등으로 작성을 함으로써 fla로 시작하는 텍스트 파일을 찾는데, 아마도 flag.txt밖에 없을 것이므로 작성해서 제출해 본다.


플래그가 도출되는 것을 볼 수 있다.


해결

profile
Web Deveolper / Offensive Security Consultant (Prev)

0개의 댓글