답변을 기다리는 질문들
접근방법 질문

src 주소에 있는 값으로 dst 즉 stdin을 조작하는게 맞나요?

2022.06.07. 22:48

힌트좀 주십쇼~

어떻게 공격해야할지 잘모르겟네요 vuln.htlm 에 script 부분을 Dom Clobbering 하려고 구상중인데 아이디어가 안떠오르네요 혹시 방향을 잘못 잡고있는 건지... dynamic-strict? csp 보면 동적 스크립트 태그 생성은 허용하는 것 같은데 막막하네요..

2022.06.11. 12:39

탑 청크 병합 관련 질문

해당 문제 강의에서 custom_func 함수는 0x100 바이트 이상의 크기를 갖는 청크를 할당하고, 할당된 청크들 중 원하는 청크를 해제할 수 있는 함수이고 0x410 이하의 크기를 갖는 청크는 tcache에 먼저 삽입되므로, 이보다 큰 청크를 해제해서 unsorted bin에 연결하고, 이를 재할당하여 값을 읽으면 libc가 매핑된 주소를 계산할 수 있다 하였습니다. 그리고 unsorted bin에 포함되는 청크와 탑 청크는 병합 대상이므로, 이 둘이 맞닿으면 청크가 병합되어 이를 피하려면 청크 두 개를 연속으로 할당하고, 처음 할당한 청크를 해제해야 한다고 했습니다. custom(0x500, "AAAA", -1) custom(0x500, "AAAA", -1) custom(0x500, "AAAA", 0) custom(0x500, "B", -1) 그런데 탑 청크와 인접하지 않기 위함이면 아래와 같이 해도 괜찮지 않을까 생각했습니다. custom(0x500, "AAAA", -1) custom(0x500, "AAAA", 0) custom(0x500, "B", -1) 실제로 수정하여 했을 때 정상작동 하였는데 혹시 강의 코드와 같이 작성하는 이유가 따로 있을까요?

2022.06.16. 14:24

우회방법과 cookie 질문드립니다...

iframe src="javascript" 구문에 %09 URL 인코딩을 섞어서 필터링을 우회하고자 하는데요, iframe src="javascri%09pt:locatio%09n.href=%27구문을 전송하면 vuln 페이지에서는 memo= 빈칸이 requestbin에 전송되고 flag 페이지에선 아무것도 전송되지 않습니다... <iframe srcdoc 로는 javascript: 구문이 안먹는것같고,, 어떻게 우회해야될지 모르겟네요 ㅠㅠ

2022.06.22. 15:32

location.href를 쓰는 이유?

풀이 강의를 보기 전 아래와 같은 코드를 사용했는데 플래그 값이 아닌 hello만 적히는데 왜 그러는지 궁금합니다! <scrscriptipt>memo_text=document.cookie</scrscriptipt> 같은 맥락의 질문인 것 같은데 풀이 강의에서 location.href를 사용하는 이유가 뭔가요?

2022.06.22. 16:56

문제를 풀었는데 왜 풀린건지 모르겠습니다<스포 주의>

flag들어가서 비번을 바꿔주고 로그인창에서 어드민으로 로그인을 해보더니 됬습니다. 이거를 제가 게시물 같은곳에 이미지를 (당신의 비밀번호를 asd로 바꾼다) 올려놓고 admin이 게시물을 확인해서 admin의 비밀번호가 asd로 바뀌어서 제가 들어가서 확인할수 있었던건가요?

2022.06.22. 19:09

다음과 같은 C 코드가 왜이렇게 동작할까요??

https://learn.dreamhack.io/16#41 에 나온 코드를 공부하던중 이해가 가지 않아 질문 드립니다. #include <stdio.h> long *ptr; int main(){ int N = 100; // ptr의 값을 변경 ptr = (long)&ptr - sizeof(long) * N; printf("%x\n", ptr); // 891cb838 // ptr[N]에 값 쓰기 ptr[N] = 1234; printf("%x\n", ptr); // 4d2 return 0; } 위 코드를 수행하면, 제가 생각하기엔 ptr의 값은 처음에 변경한 값 그대로고, ptr + N의 위치 값만 바뀌어야 할것 같은데 ptr의 값 자체가 바뀌더군요. 왜 그럴까요???

arm 칩으로 문제를 풀고 있습니다. 문제가 안풀려요.

from pwn import * p = remote('host3.dreamhack.games',13521) context.arch = 'aarch64' shellcode = '' shellcode += shellcraft.pushstr('/home/shellbasic/flagnameisloooooong') shellcode += shellcraft.open('r13', 0, 0) shellcode += shellcraft.read('r0','r13',100) shellcode += shellcraft.write(1,'r13',100) p.sendlineafter(': ',asm(shellcode)) p.interactive 풀이의 shellcraft를 참고하여 코드를 작성했습니다. 검색해보니 r0 -> rax , r13 -> rsp 라고 설명이 되어있어서 원래 코드에서 수정해서 작성하였습니다. 그러나 작성하고나니까, File "", line 1, in <module> NameError: name 'r0' is not defined [*] Closed connection to host3.dreamhack.games port 13521 이렇게 오류가 뜨네요 어떻게 풀어야하는지 모르곘어요 ㅜㅜ 윈도우 데스크탑이 없어서 현재 칼리리눅스 utm으로 돌리는 중입니다. 그리고 궁금증이 있는데, shellcraft에서 0x100이 들어가는 이유를 모르곘어요. 왜 0x100인가요? 데이터를 넉넉하게 받기 위해 0x100만큼 받는건가요?

2022.06.24. 23:57

Question

“/“ 경로에 있는 분기문이 존재하므로 “/“ 경로에서는 hostname에 web-noob.kr이 들어가야하고, bot.js의 URL.href에는 “/flag”경로가 들어가야 flag를 딸 수 있을 것 같은데, 어떤 방식을 써야 경로에 따라 hostname을 각각 다르게 값을 넣을 수 있을까요?

2022.06.25. 02:10

1개의 강의가 있습니다.