Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- - 16h24 - 18/7
- + Thinking: Bài 150 điểm và cho libc có vẻ là bài leak libc, overwrite got để chạy system("/bin/sh"). Okie thử theo hướng này -> cần
- + Khả năng để ghi vào GOT, leak address libc ->
- + Checksec: full protection @_@' -> ko ảnh hưởng lắm với kiểu attack này. Ko chạy shellcode trên stack, shell lên trước khi ret nên ko sợ canary. ASLR ko ảnh hưởng vì leak address lúc runtime
- + Leak: ở đây chỉ có viết ra console qua hàm __printf_chk vậy phải dựa vào hàm này leak. Có tất cả 4 chỗ gọi hàm này.
- + Loại cái đầu vì lúc này mình chưa cann thiệp vào chức năng của chương trình
- + Cái thứ 2 có thể leak thông tin từ stack vì hàm read ko để null byte cuối buffer -> leak từ đây. Leak cái gì?
- + Ở chỗ địa chỉ của buffer đang có data gì nhỉ? -> debug thử. Có địa chỉ của segment trong libc -> Leak thử xem. 24 byte để đến chỗ đó. Nhỡ giá trị của nó có 0x00 thì toi. Vậy cứ thử xem nếu dòng printf bt thì có 0x00 trong đó ko thì tự add vào -> chính xác nó nằm ở đâu trong libc (chưa biết nó nằm ở đâu thôi qua suy nghĩ tìm cách viết vậy)
- + Ghi đè GOT: ở đây có cách hàm __printf_chk, fflush, __isoc99_scanf, puts
- - 17h16: Dừng lại chuẩn bị về
- -9h40 - 19/7
- + Ko tìm được cách overwrite GOT -> nên suy nghĩ lại cách tiếp cận hướng giải. Trước khi bắt tay vào làm cần xác định hướng này cần chính xác hướng attack này cần những gì. Ví dụ như hướng attack trên thì nên xác định thêm để overwrite GOT thì có những cách nào xem có phù hợp với bài ko. Okie build checklist cho mỗi method
Add Comment
Please, Sign In to add comment