Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possible Challenges #1

Open
mudongliang opened this issue Aug 7, 2023 · 7 comments
Open

Possible Challenges #1

mudongliang opened this issue Aug 7, 2023 · 7 comments

Comments

@mudongliang
Copy link
Member

mudongliang commented Aug 7, 2023

  1. simple demo - directly reads the /flag (Demo)
  2. set setuid for other utilities (Backdoor)
  3. Pwntools Usage - Program Interaction, 录屏,mdl
  4. Assembly Basic (refer to Assembly Crash Course), mdl
  5. CrackMe (ELF executable), pengyu
  6. Gdb usage, 录屏,TODO !! hyh and pengyu
  7. Buffer (Stack/Heap) Overflow done Off-by-one moves here
  8. Integer Overflow, mdl, hyh TODO
  9. UAF hyh (MDL check)
  10. Shellcode Generation, pengyu
  11. ROP, hyh; todo, execve done
  12. bilibili & Zoho Docs
  13. Other Vulnerabilities (Format String)
  14. Mitigation Bypass (Canary) -> maybe we can move it to our experiment
@huyinhao huyinhao mentioned this issue Aug 15, 2023
Merged
@huyinhao
Copy link
Contributor

TODO: dojo 分成两份 challenge,一份是专门上课使用的,如随堂作业,课后作业,另一份是专门的软件安全实验

@mudongliang
Copy link
Member Author

mudongliang commented Aug 20, 2023

buffer overflow(以stack overflow为例):

  1. 修改栈上局部变量,函数指针;
  2. 修改栈上返回地址;简单 shellcode
  3. shellcode 注入是不是可以直接放在当前这个地方;
  4. off-by-one, off-by-null?
  5. open read write flag or execve?
  6. oob 和 uaf 整合成 memory safety?

@huyinhao
Copy link
Contributor

  1. sandbox
  2. canary,nx,aslr 等综合起来
  3. canary byte by byte

@huyinhao
Copy link
Contributor

Optional: 设计一个在 overflow return address 的时候,维护 old rbp 的 challenge

@mudongliang
Copy link
Member Author

Shell injection:

  1. put shellcode after the return address; and directly calculate the stack adress;
  2. use "jmp rsp" as a gift for students

@huyinhao
Copy link
Contributor

更多利用方式:

  1. ROP类:ROP, JOP, DOP, BROP, SROP, FSOP ...
  2. _dl_runtime_resolve类攻击: ret2dlresolve, house-of-muney, ...
  3. 劫持hook类攻击:malloc_hook, realloc_hook, free_hook, exit_hook, io_file_hook, ...

@wumingzhilian
Copy link
Contributor

shellcode injection
shellcode 1-0 直接读取 并执行
shellcode 1-1 随机过滤前0x900字节
shellcode 1-2 过滤 \00 字节

shellcode 1-2 过滤 x64 汇编指令。(0x48 )

shellcode 1-3 过滤 过滤syscall
shellcode 1-4 可见字符 执行 shellcode

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants