Pwn chuyển luồng thực thi

Thảo luận trong 'Exploitation' bắt đầu bởi ROLLDOCK, 29/09/17, 09:09 PM.

  1. ROLLDOCK

    ROLLDOCK W-------

    Tham gia: 03/02/16, 10:02 AM
    Bài viết: 16
    Đã được thích: 0
    Điểm thành tích:
    6
    #include <stdio.h>
    int main()
    {
    int cookie;
    char buf[16];
    printf("&buf: %p, &cookie: %p \n", buf, &cookie);
    gets(buf);
    if(cookie==0x000D0A00)
    {
    printf("You win ! \n");
    }
    }

    e có một đoạn code như trên (trích sách taose.pdf của nguyễn thành nam)
    Bài này dùng chuyển luồng thực thi, e làm như trong hướng dẫn như mà không được. E mong mn giúp đỡ e ạ. e mới chơi pwn
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  2. krone

    krone Moderator Thành viên BQT

    Tham gia: 26/07/16, 03:07 PM
    Bài viết: 240
    Đã được thích: 122
    Điểm thành tích:
    43
    cái này có lẽ bạn nên xem lại buff có nằm trong sanbox 32bit hay ko :D.
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  3. ROLLDOCK

    ROLLDOCK W-------

    Tham gia: 03/02/16, 10:02 AM
    Bài viết: 16
    Đã được thích: 0
    Điểm thành tích:
    6
    a có thể nói rõ hơn ko ạ. Sanbox 32bit là gì ạ, e dùng edb trong linux phân tích rồi cũng không thấy gì cả ạ .
    a có thể giải bài này luôn cho e được ko ạ. E cảm ơn nhiều
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  4. krone

    krone Moderator Thành viên BQT

    Tham gia: 26/07/16, 03:07 PM
    Bài viết: 240
    Đã được thích: 122
    Điểm thành tích:
    43
    Mình không chơi pwn, nhưng mà cuốn này mình có đọc qua. Hình như là phải chèn biến buff cho đến khi gặp biến cookie, đè lên cookie đó mã 000D0A00 thì mới đúng.
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  5. tmnt53

    tmnt53 Moderator Thành viên BQT

    Tham gia: 25/04/15, 09:04 AM
    Bài viết: 128
    Đã được thích: 95
    Điểm thành tích:
    28
    Bạn chụp cho mình xem địa chương trình in ra địa chỉ cookie và buf bằng bao nhiêu nhé. Mình nghi ngờ là trong bộ nhớ stack, cookie được đặt phía trước buf (dù trong khai báo của code thì cookie nằm sau buf), cho nên dù ghi tràn biến buf thì cookie cũng không bị sao.
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Tags: