묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결리눅스 커널 해킹. A부터 Z까지
KADR 우회에서 init파일이 없는 경우는 어떻게 하나요?
커널 문제를 찾아보다가 cpio를 풀어도 init 파일이 없는 문제가 있었는데 이런 경우 우회를 어떤 식으로 해야 하나요?
-
미해결리눅스 커널 해킹. A부터 Z까지
KADR 우회에서 init파일이 없는 경우는 어떻게 하나요
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨리눅스 커널 해킹. A부터 Z까지
여전히 해결책 없는 build_result
커널과 cpio 를 하라는데로 했음에도 Build_result는 find를 써도 찾을수가 없습니다. 제가 어느 부분에서 누락된 걸까요?아니면 폴더를 따로 만들어서 복붙한건가요? 복붙의 경우 bimage에 우분투 기준으로X표시가 생깁니다ked@ked-VirtualBox:~/Desktop/classk/linux-5.8.5$ make -j 4DESCEND objtoolCALL scripts/atomic/check-atomics.shCALL scripts/checksyscalls.shCHK include/generated/compile.hKernel: arch/x86/boot/bzImage is ready (#1)이런식으로 빌드가 완료됬긴 했으나 실제로 Build_result가 생기진 않습니다. 3년전 영상이라 그런지 몰라도 bzImage는 있어도 Build_result 폴더는 없습니다. 해당 위치를 그냥 Build_result처럼 사용하면되나요?
-
미해결리눅스 커널 해킹. A부터 Z까지
KASLR 강의에서 주어진 환경에서는 /proc/kallsyms 확인 못하는 것이 맞나요?
파일 다운 후 커널에서 head -3 proc/kallsyms 를 해보니 주소가 000000000~으로 나옵니다. root 권한이 아니여서 그런 것 같은데 강의 사진은 따로 root권한이 있는 환경에서 실행한 화면인가요?
-
미해결해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
도구 다운로드에서 복사 붙여넣기가 계속 안되는데 왜그러는 건지 알수 있을까요?
도구 다운로드에서 복사 붙여넣기가 계속 안되는데 왜그러는 건지 알수 있을까요?
-
미해결리눅스 커널 해킹. A부터 Z까지
build_result가 안보입니다
커널과 cpio 를 하라는데로 했음에도 Build_result는 find를 써도 찾을수가 없습니다. 제가 어느 부분에서 누락된 걸까요?아니면 폴더를 따로 만들어서 복붙한건가요? 복붙의 경우 bimage에 우분투 기준으로X표시가 생깁니다
-
미해결해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
질문있습니다.flag가 안 나옵니다
익스코드가 잘못된걸까요??
-
해결됨해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
안녕하세요 질문있습니다
브포 걸고 컨티뉴가 안돼서 런으로 입력을 했는데스택 부분이 이렇게 나오는데 어느 부분이 잘못된 건지 알고 싶습니다
-
미해결해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
안녕하세요 질문 있습니다
1 입력하면 저렇게 나오는데 우분투에 helloflag 디렉토리가 없어서 나오는 건가요?? 해결방법 알고 싶습니다
-
미해결해킹대회(CTF) 출전을 위한 시스템해킹(Pwnable) 입문
마지막강의 재생이 안됩니다
마지막강의 재생이 안됩니다
-
미해결취미로 해킹#1(OverTheWire - Bandit)
weechat 명령어 오류
위챗에서 /set irc.server_default.ssl_verify off/set irc.server_default.ssl_dhkey_size 1024두 명령어를 이용했을때 찾을 수 없다고 나오는데 옵션이 달라진걸까요?
-
미해결리눅스 커널 해킹. A부터 Z까지
kernel stack pivoting에서 gadget 관련 질문드립니다.
stack pivoting 예제에서 gadget을 찾지 못합니다.bzImage 에서는 xchg gadget이 존재하는데vmlinux에서는 xchg gadget이 존재하지 않습니다. bzImage 내 gadget 주소와 kernel base 주소를 더해도 예제(exp.c)에서 사용한 gadget 주소(0xffffffff8176b4fd) 가 나오지 않습니다. 이런 경우엔 어떤 방법으로 gadget 주소를 구해야 할까요? 위 내용 확인해 주시면 감사하겠습니다.
-
미해결웹 서비스 해킹을 위한 버프스위트 완벽 활용 가이드
프록시 설정하면 엄청 느려요
계속 돌아가요....몇분 지나도 페이지가 접속이 안되어서burp suite 못쓰겠어요 저희가 망분리가 되어 있긴 해요...취약점 점검 업무라서 burp suite을 써야하는데 프록시 설정을 끄면 잘 돌아가고 설정하면 거의 멈추고 진행이 안되요 ㅠㅠ
-
미해결웹 서비스 해킹을 위한 버프스위트 완벽 활용 가이드
이거 해결 어떻게 하죠?
윈도우 11사용하는 데 크롬에서 설정들어가서 컴퓨터에서 프록시 설정 켜기로 설정하래서 해보니까 거기서 8080pt 무ㅓ127.0.01 그런거 입력하라는 데로 다했는데 하니까 크롬에서 아무 사이트 들어가니까 사이트가 공격 받고 있을수있습니다 라고하면서 사이트가 실행이 되지 않는데 이거 어떻게 해결하죠?
-
미해결리눅스 커널 해킹. A부터 Z까지
안녕하세요 수강중 궁금한 것이 있습니다.
해당 수업을 들으면서, 선생님이 미리 짜놓은 코드로만 진행이 되어서 그저 기계처럼 따라만 하고 있어서 전혀 이해가 가지 않습니다..혹시 해당 코드가 어떻게 제작되었는지부터 이해하려고 하는데, 어떤것을 보면서 수업을 들으면 도움이 될까요?
-
미해결리눅스 커널 해킹. A부터 Z까지
pwndbg가 커널에 attach는 되는데 디스어셈코드나 레지스터 표시가 안됩니다.
위 사진과 같이 디버거에 아무런 정보도 표시가 되지 않습니다. vmlinux도 추출해놓은 상태입니다.
-
미해결리눅스 커널 해킹. A부터 Z까지
가젯에 대해 이해가 잘 안됩니다.
pop rax; ret;0x6f0에서 pop rax; ret; 어셈블리가 어떻게 rax에 0x6f0을 넣게 되는 건가요?
-
해결됨리눅스 커널 해킹. A부터 Z까지
Kernel KPTI 적용시 영향?
/mnt/c/Users/msh/Desktop/stack_based_BOF 1m 26s ❯ grep ": mov rdi, rax ; rep" ./gadgets.txt 0xffffffff8145a958 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff8145a368 0xffffffff814747df : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff81474961 0xffffffff81479c79 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff81479cd8 0xffffffff8150a792 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff8150a391 0xffffffff81b08ab4 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff81b08a75 0xffffffff82a213e5 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff82a212b9 0xffffffff82a48d7c : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; jmp 0xffffffff82a48d92 0xffffffff81b098e6 : mov rdi, rax ; rep movsb byte ptr [rdi], byte ptr [rsi] ; pop rbx ; pop rbp ; ret 0xffffffff82a081f0 : mov rdi, rax ; rep movsd dword ptr [rdi], dword ptr [rsi] ; ret 0xffffffff81132ad8 : mov rdi, rax ; rep movsq qword ptr [rdi], qword ptr [rsi] ; jmp 0xffffffff81132970 0xffffffff81b2413b : mov rdi, rax ; rep movsq qword ptr [rdi], qword ptr [rsi] ; retgef➤ x/10xi 0xffffffff82a081f0 0xffffffff82a081f0: Cannot access memory at address 0xffffffff82a081f0 gef➤ x/10xi 0xffffffff81132ad8 0xffffffff81132ad8: mov rdi,rax 0xffffffff81132adb: rep movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] 0xffffffff81132ade: jmp 0xffffffff81132970 0xffffffff81132ae3: call 0xffffffff81b26270 0xffffffff81132ae8: nop DWORD PTR [rax+rax*1+0x0] 0xffffffff81132af0: push r15 0xffffffff81132af2: push r14 0xffffffff81132af4: push r13 0xffffffff81132af6: mov r13,rdi 0xffffffff81132af9: push r12KPTI가 적용된 커널에서 일부는 주소를 찾아도 gdb로 확인을 할 수 없는데, 왜 그런건가요?user level에서 page table이 줄어들어서 특정 부분이 빠지다보니, 그 가젯이 있는 부분도 빠져서 안보이는거 같은데, 약간 이상한거같습니다.[ Legend: Modified register | Code | Heap | Stack | String ] ───────────────────────────────────────────────────────────────────────────────────────────────────────── registers ──── $rax : 0xffffffff81b2c390 $rbx : 0x0 $rcx : 0x0 $rdx : 0x22a $rsp : 0xffffffff82403eb0 $rbp : 0x0 $rsi : 0x83 $rdi : 0x0 $rip : 0xffffffff81b2c3ae $r8 : 0xffff88801f01dec0 $r9 : 0x200 $r10 : 0x0 $r11 : 0x2f7 $r12 : 0x0 $r13 : 0x0 $r14 : 0x0 $r15 : 0x0 $eflags: [ZERO carry PARITY adjust sign trap INTERRUPT direction overflow resume virtualx86 identification] $cs: 0x10 $ss: 0x18 $ds: 0x00 $es: 0x00 $fs: 0x00 $gs: 0x00 ───────────────────────────────────────────────────────────────────────────────────────────────────────────── stack ──── [!] Unmapped address: '0xffffffff82403eb0' ─────────────────────────────────────────────────────────────────────────────────────────────────────── code:x86:64 ──── 0xffffffff81b2c3a5 verw WORD PTR [rip+0x4d94d6] # 0xffffffff82005882 0xffffffff81b2c3ac sti 0xffffffff81b2c3ad hlt → 0xffffffff81b2c3ae mov ebp, DWORD PTR gs:[rip+0x7e4e4fab] # 0x11360 0xffffffff81b2c3b5 nop DWORD PTR [rax+rax*1+0x0] 0xffffffff81b2c3ba pop rbx 0xffffffff81b2c3bb pop rbp 0xffffffff81b2c3bc pop r12 0xffffffff81b2c3be ret ─────────────────────────────────────────────────────────────────────────────────────────────────────────── threads ──── [#0] Id 1, stopped 0xffffffff81b2c3ae in ?? (), reason: SIGINT ───────────────────────────────────────────────────────────────────────────────────────────────────────────── trace ──── [#0] 0xffffffff81b2c3ae → mov ebp, DWORD PTR gs:[rip+0x7e4e4fab] # 0x11360 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── gef➤ x/10xi 0xffffffff82a081f0 0xffffffff82a081f0: Cannot access memory at address 0xffffffff82a081f0혹시 몰라서 qemu script에서 qemu64로 바꿔서 kpti를 끄고 gdb를 달아서 테스트를 해봤더니, 이상하게 나오네요.$r12 : 0x0 $r13 : 0x0 $r14 : 0x0 $r15 : 0x0 $eflags: [ZERO carry PARITY adjust sign trap INTERRUPT direction overflow resume virtualx86 identification] $cs: 0x10 $ss: 0x18 $ds: 0x00 $es: 0x00 $fs: 0x00 $gs: 0x00 ───────────────────────────────────────────────────────────────────────────────────────────────────────────── stack ──── [!] Unmapped address: '0xffffffff82403eb0' ─────────────────────────────────────────────────────────────────────────────────────────────────────── code:x86:64 ──── 0xffffffff81b2c3a5 verw WORD PTR [rip+0x4d94d6] # 0xffffffff82005882 0xffffffff81b2c3ac sti 0xffffffff81b2c3ad hlt → 0xffffffff81b2c3ae mov ebp, DWORD PTR gs:[rip+0x7e4e4fab] # 0x11360 0xffffffff81b2c3b5 data16 data16 data16 xchg ax, ax 0xffffffff81b2c3ba pop rbx 0xffffffff81b2c3bb pop rbp 0xffffffff81b2c3bc pop r12 0xffffffff81b2c3be ret ─────────────────────────────────────────────────────────────────────────────────────────────────────────── threads ──── [#0] Id 1, stopped 0xffffffff81b2c3ae in ?? (), reason: SIGINT ───────────────────────────────────────────────────────────────────────────────────────────────────────────── trace ──── [#0] 0xffffffff81b2c3ae → mov ebp, DWORD PTR gs:[rip+0x7e4e4fab] # 0x11360 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── gef➤ x/10xi 0xffffffff82a081f0 0xffffffff82a081f0: int3 0xffffffff82a081f1: int3 0xffffffff82a081f2: int3 0xffffffff82a081f3: int3 0xffffffff82a081f4: int3 0xffffffff82a081f5: int3 0xffffffff82a081f6: int3 0xffffffff82a081f7: int3 0xffffffff82a081f8: int3 0xffffffff82a081f9: int3 gef➤vmlinux를 잘못 추출한건가 싶어서 다시 추출해봤는데도 이상합니다.
-
해결됨리눅스 커널 해킹. A부터 Z까지
qemu 스크립트 실행시 Kernel panic이 발생합니다.
리눅스 커널 분석 환경 세팅 단원에서 qemu세팅 부분 수업을 따라하고 있습니다.먼저 boot.sh파일을 만들고 스크립트를 실행하였는데 다음과 같은 에러가 계속해서 반복됩니다.아래 boot.sh파일과 반복 에러 그림을 첨부하겠습니다.감사합니다.스크립트반복에러
-
미해결취미로 해킹#1(OverTheWire - Bandit)
L23->L24 권한 거부 때문에 작성한 쉘코드를 실행 할 수가 없어요
/tmp/mydir3118/bandit24sh.sh 생성해서 쉘코드 작성하고 chmod 777 /tmp/mydir3118/bandit24sh.sh로 권한도 변경해줬습니다. 그런데 만들 쉘코드 파일을 /var/spool/bandit24로 옮기려니까 권한 거부됬다고 뜨더라구요. bandit23@bandit:/var/spool/bandit24$ ls -al /tmp/mydir3118 total 108 drwxrwxr-x 2 bandit23 bandit23 4096 Jan 28 03:28 . drwxrwx-wt 1025 root root 98304 Jan 28 03:53 .. -rwxrwxrwx 1 bandit23 bandit23 68 Jan 28 03:10 bandit24sh.sh -rw-rw-r-- 1 bandit23 bandit23 0 Jan 28 03:28 rst.txt bandit23@bandit:/var/spool/bandit24$ cp /tmp/mydir3118/bandit24sh.sh . cp: cannot create regular file './bandit24sh.sh': Operation not permitted확인해보니까 /var/spool/bandit24에 write권한이 없었습니다. chmod로 변경해보려는 건 당연히 안된다고 막혔구요... bandit23@bandit:/var/spool/bandit24$ ls -al total 12 dr-xr-x--- 3 bandit24 bandit23 4096 Jan 11 19:18 . drwxr-xr-x 5 root root 4096 Jan 11 19:18 .. drwxrwx-wx 9 root bandit24 4096 Jan 28 03:53 foo어떻게 해야할까요?