TAILIEUCHUNG - Hacker Professional Ebook part 280

Tham khảo tài liệu 'hacker professional ebook part 280', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Chuẩn bị Thay đổi con trỏ stack sẽ cho chúng ta điều gì Chúng ta không thể thay đổi giá trị của thanh ghi con trỏ bảo lưu saved eip một cách trực tiếp giống như trong các khai thác lỗi tràn bộ đệm kinh điển nhưng chúng ta có thể khiến bộ xử lý nghĩ rằng giá trị của nó trỏ đến nơi khác. Khi bộ xử lý trở về return tự một thủ tục nó chỉ pop giá trị word đầu tiên trên stack xem nó là giá trị eip cũ. Nhưng nếu chúng ta thay đổi giá trị của esp chúng ta có thể khiến bộ xử lý pop một giá trị bất kỳ trên stack và xem đó như là eip và vì thế đổi hướng thực thi của chương trình. Hãy làm tràn bộ đệm với chuỗi có dạng sau nops shellcode shellcode ebp_altering_byte Để làm được điều này trước chúng ta nên xác định giá trị mà chúng ta muốn thay đổi ebp thành từ đó thay đổi esp . Hãy xem nội dung trên stack có gì khi tràn bộ đệm xảy ra saved_eip saved_ebp altered by 1 byte shellcode shellcode char buffer nops int i Ở đây chúng ta muốn esp trỏ đến shellcode để địa chỉ của shellcode sẽ được pop vào eip khi bộ xử lý trở về từ hàm main . Bây giờ chúng ta đã có đầy đủ những kiến thức cần thiết để khai thác chương trình bị lỗi chúng ta cần trích thông tin chính xác từ tiến trình đang thực thi trong ngữ cảnh nó sẽ xảy ra khi bị khai thác. Thông tin này gồm địa chỉ của bộ đệm bị làm tràn và địa chỉ của con trỏ đến bộ đệm của chúng ta shellcode . Hãy chạy chương trình như thể chúng ta muốn nó bị làm tràn bởi chuỗi nhập có chiều dài 257 byte. Để làm được điều này chúng ta phải viết một chương trình khai thác giả để tái tạo ngữ cảnh mà chúng ta sẽ tiến hành khai thác tiến trình bị lỗi. gdb q ipdev tests cat include include main int i char buffer 1024 bzero buffer 1024 for i 0 i 256 i buffer i A execl . suid suid buffer NULL AD ipdev tests gcc -o fake_exp ipdev tests gdb --exec fake_exp --symbols suid gdb run Starting program home klog tests exp2 Program received signal SIGTRAP Trace breakpoint trap. 0x8048090 in crt_dummy_ gdb disassemble func .

TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.