p1n9
'Dreamhack' 태그의 글 목록

Dreamhack

Hacking/Web

[Web Hacking] SSRF

SSRF HTML 삽입 미리보기할 수 없는 소스 SSRF란? HTML 삽입 미리보기할 수 없는 소스 SSRF는 Server Side Request Forgery의 약자이다. 어디서 뭔가 비슷한 게 보이지 않나 바로 CSRF이다. CSRF가 클라이언트 중심의 공격이었다면 SSRF는 서버 쪽을 타깃으로 하는 공격 기법이다. SSRF를 알기 위해서 Microservice를 아는 것이 필요한데 쉽게 설명하겠다. Microservice 현대에는 마이크로 서비스중심의 아키텍처를 가지고 있는데 말이 좀 어려워서 그런 거지 그냥 서비스마다 각각 나누어 설계한다라는 의미이다. 나누어 설계를 하다 보니 서버에서도 어느 하나의 서비스가 필요하다 하면내부망의 서버끼리 통신하면서 데이터를 가져오고 보낸다. 아래의 이미지(exa..

CTF/Web

[Wargame.kr] strcmp

strcmp HTML 삽입 미리보기할 수 없는 소스 Vulnerability HTML 삽입 미리보기할 수 없는 소스 문제의 소스코드에서 strcmp를 이용하여 password를 비교하는 것을 알 수 있다. 비교 연산도 느슨한 비교 연산자를 사용하고 있어서 해당 부분이 취약한 부분이 될 것이다. else if(isset($_POST['password'])){ sleep(1); // do not brute force! if (strcmp($_POST['password'], $password) == 0) { echo "Congratulations! Flag is " . $FLAG .""; exit(); } else { echo "Wrong password.."; } 0을 비교하므로 아마 NULL값이랑 비교되어..

CTF/Web

[Wargame.kr] jff3_magic

jff3_magic HTML 삽입 미리보기할 수 없는 소스 Vulnerability HTML 삽입 미리보기할 수 없는 소스 해당 문제를 보면 alert창이 하나 뜨는데 hint가 swp라고 한다. swp는 vi의 오류로 인해 파일을 일시적으로 백업을 하게 되는데 파일의 확장자가 swp가 된다. swp파일은 숨겨진 파일로 생성되어 .[파일명].swp의 형태로 저장된다. swp파일을 다운로드할 수 있는지를 확인해보면 .index.php.swp로 다운로드할 수 있다. vi로 swp파일을 열어야 swp파일을 볼 수 있는데 파일명을 .index.php.swp로 변경한 후 -r 옵션을 이용하여 파일을 열 수 있다. $ vi -r .index.php.swp 코드를 보면 문제 해결을 위한 소스코드는 아래와 같다. ma..

CTF/Web

[Wargame.kr] md5 password

md5 password 원래는 계속 존댓말로 썼는데 그냥 반말로 쓸게 반말로 쓰는 게 익숙해져서 안 되겠다. HTML 삽입 미리보기할 수 없는 소스 Vulnerability md5의 인코딩 방식을 사용하였을 때 SQLI가 일어날 수 있는 취약점이 있다. 바로 아래의 함수 때문에 가능해진다. 이게 php도 가능하고 python에서의 md5().digest()함수를 사용하여도 동일한 값이 나다. md5( string $str [, bool $raw_output = FALSE ] ) 위의 함수에서 문제 되는 부분은 $raw_output 때문이다. False일 경우에는 16진수 형태인 문자로 나와서 취약하지 않지만 True일 때가 문제가 된다. php의 경우에 True일 경우 digest로 출력이 되는데 hex..

CTF/Web

[Dreamhack CTF] command-injection-1

command-injection-1 HTML 삽입 미리보기할 수 없는 소스 Vulnerability HTML 삽입 미리보기할 수 없는 소스 해당 문제는 아래의 코드에서 취약점이 발생한다. cmd변수에 사용자 입력값이 들어오는 필터링 없이 그대로 사용하여 Injection이 발생된다. output = subprocess.check_output(['/bin/sh', '-c', cmd], timeout=5) Exploit HTML 삽입 미리보기할 수 없는 소스 위의 취약점을 토대로 바로 Injection을 시도하게 되면 형식에 맞춰서 입력하라고 나온다. 이는 client단에서 Input태그의 속성 값에 의해 필터링되는 것인데 이는 개발자 도구를 이용하여 해당 속성만 없애주면 입력할 수 있다. pattern="..

CTF/Web

[Dreamhack CTF] Mango

Mango HTML 삽입 미리보기할 수 없는 소스 Vulnerability HTML 삽입 미리보기할 수 없는 소스 웹 사이트로 들어가보면 해당 문구가 보인다. 그대로 URL에 넣어보면 "guest"가 출력이 됩니다. 해당되는 값을 찾는다면 그uid를 보여주는데 소스코드를 보시면 const BAN = ['admin', 'dh', 'admi'];로 필터링을 하고 있습니다. /?login?uid[$ne]=guest&upw[$regex]="^alpha+num" 위와 같은 방식으로 Injection을 수행해도 동작하지만 문제는 uid가 "guest" "admin" 뿐만 아니라 "testuser" "dreamhack" 도 있다는 것 입니다. "$ne" 말고도 uid에 $regex를 사용해 uid[$regex]=ad..