Làm thế nào để chèn thêm một function trên file ELF

Chào các bạn, Mình có 1 thắc mắc như sau:
Làm thế nào để edit hoặc chèn thêm 1 function vào file binary trên linux có type như sau:

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped

Mình ở HCM, rất cần được hướng dẫn để có thể chỉnh sửa được những file như này
Bạn nào biết thì chỉ, hoặc dạy cho mình với nhé, mình xin cảm ơn và đóng học phí đầy đủ ^^

Bạn tham khảo tại đây thử xem.
Key word là: ELF injection hoặc cách khác là reverse engineering

4 Likes

em k có thời gian ngồi mò, em cần tìm thầy dạy trực tiếp ở HCM.
thầy nào cảm thấy được thì rep em với ạ

đa tạ bác
Chúc bác năm mới luôn mạnh khỏe nhé

Mình chỉ mất cỡ 30 phút đọc bài ở link trên kia và google để ra được kết quả này:
Screen Shot 2021-01-20 at 16.32.57

Sao bạn không thử trong khi chờ đợi thầy dạy trực tiếp xuất hiện nhỉ?

5 Likes

dùng ld preload thì bạn phải check file elf có những function nào, rồi sau đó rewrite lại 1 hàm trong đó.
cái mình cần là chèn thêm 1 function mới vào file elf, mà k chỉnh sửa bất kỳ một function nào có sẵn.

rất xin lỗi đã làm tốn 30 phút của bạn.

Vầy thì chúc bạn may mắn và sớm tìm được thầy nhé.

bạn viết 1 hàm mới vào file so cần patch. tiếp theo bạn tìm hàm muốn invoke hàm mới và patch nó.
như hàm void a() bạn muốn gọi hàm mới void b() thì cũng phải patch void a() thôi. chứ không bạn thêm vô cũng đâu invoke hàm void b() được

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?