Tag Archive

#privilege-escalation

이 태그가 포함된 글을 최신순으로 모아봤어요.

4
posts
BLOG2026-08-03
[🥈 Silver 2] 셸이 권한을 떨구기 전에 그 조건을 지워 버린다 — DreamHack Path Finder 풀이
blog

[🥈 Silver 2] 셸이 권한을 떨구기 전에 그 조건을 지워 버린다 — DreamHack Path Finder 풀이

setgid 바이너리가 system("clear") 를 부른다. 절대경로가 아니니 PATH 를 앞에서부터 훑고, 내가 심어 둔 clear 가 문제 그룹 권한으로 돈다. 그런데 setgid 비트만으로는 이게 통하지 않는다. dash 가 시작하면서 빌려온 권한을 스스로 내려놓기 때문이다. 그 방어를 무력화하는 게 바로 앞줄의 setresgid 한 줄이었다.
#dreamhack#ctf#misc+8
 
BLOG2026-07-28
[🥈 Silver 4] setuid 바이너리가 스스로 안전장치를 끄는 순간 — DreamHack file-special-bit 풀이
blog

[🥈 Silver 4] setuid 바이너리가 스스로 안전장치를 끄는 순간 — DreamHack file-special-bit 풀이

dream 소유의 setuid 바이너리가 argv[1] 을 그대로 "cat %s" 에 끼워 system() 으로 넘긴다. 보통은 sh 가 실행 즉시 euid 를 ruid 로 되돌려 이런 주입이 무력해지는데, 이 문제는 system() 직전에 setreuid(geteuid(), geteuid()) 로 real uid 까지 올려 버려서 sh 가 떨어뜨릴 권한을 남기지 않는다. 같은 코드에서 그 한 줄만 뺀 대조군을 만들어 차이를 직접 찍었고, filename 버퍼가 10바이트라 전체 경로가 잘리는 것도 gdb 로 확인했다.
#dreamhack#ctf#misc+7