Posts

Showing posts from April, 2018

Exploit deaslr through _dl_runtime_resolve

Image
Chào tất cả mọi người, cuối cùng thì tôi cũng đã quay lại sau bao ngày im hơi lặng tiếng :)) Abstract: Hôm nay nhân một ngày đẹp trời, để đánh dấu sự trở lại của mình tôi có một bài viết để phân tích về một kỹ thuật exploit khi mà bạn không thể leak được bất kì thông tin gì và ASLR (Address space layout randomization) đang được bật và cũng không có bất kỳ thông tin về phiên bản libc được sử dụng trên server.  Explain: Đã bao giờ bạn đặt ra một câu hỏi "WTF? Tại sao chương trình nó chạy lại có thể run đến một cái hàm ở trong thư viện libc?" Để tìm hiểu thì bây giờ hãy thử compiler một file dơn giản sử dụng một hàm của thư viện nhé! File: test.c Hãy thử debug và next từng dòng lệnh assembly để khám phá!! Debug nào :)) Hãy chú ý đến từng lệnh vì tất cả nó đề có ý nghĩa rất quan trọng. Nhìn qua flow của chương trình thì thấy chương trình call đến hàm _dl_runtime_resolve_avx với 2 tham số được push vào stack. Trong trường hợp nà