Vỏ ngược là gì?
Mục lục
- vỏ là gì
- Vỏ ngược là gì
- Tại sao những kẻ tấn công/tin tặc cần một trình bao đảo ngược
- Sự khác biệt giữa tấn công qua mạng WAN và LAN
- ngăn chặn đảo ngược vỏ
Đầu tiên, chúng ta phải biết shell là gì trước khi chuyển sang shell ngược. Đó có phải là cái mai giống cái mai rùa không? không phải vậy, nhưng nó được đặt tên là shell vì nó là lớp ngoài cùng xung quanh hệ điều hành. một cái vỏ làm gì? Shell là một chương trình dịch các lệnh của chúng ta sang hệ điều hành. Đó là một giao diện giữa hệ điều hành và người dùng. Nó nhận đầu vào là các lệnh hoặc từ khóa từ bàn phím và cung cấp cho HĐH và thiết bị đầu cuối/CLI (giao diện dòng lệnh) cho phép bạn nhập lệnh và tương tác với trình bao. Có nhiều suy nghĩ sâu sắc hơn về shell, nhưng tôi sẽ không trình bày chúng vì blog này sẽ chủ yếu tập trung vào reverse shell.
Vỏ ngược là gì?
Tôi cá là bạn đã nghe thuật ngữ này khá nhiều trong các video hướng dẫn và CTF nhưng vẫn chưa biết ý nghĩa của chúng. Đây là nơi thích hợp cho bạn. Ý nghĩa của một vỏ ngược là trong tên. Nó thực hiện ngược lại với những gì một kết nối từ xa thông thường thực hiện - người dùng là khách hàng kết nối máy chủ, mục tiêu chủ yếu của những kẻ tấn công. Máy chủ lắng nghe các kết nối từ người dùng trên các cổng cụ thể. Ví dụ: một máy chủ web sẽ lắng nghe trên cổng 443 để biết kết nối đến để nó có thể cung cấp dịch vụ mà người dùng muốn đó là một trang web. Làm thế nào để đảo ngược vỏ làm điều đó ngược lại? trong các trường hợp đảo ngược, máy chủ bắt đầu kết nối từ xa và người dùng là kẻ tấn công sẽ lắng nghe trên cổng mà máy chủ sẽ cố gắng kết nối. Chẳng hạn, tải trọng shell ngược được đưa vào máy chủ web. Trong trọng tải đó, bạn có thể thấy địa chỉ IP của máy tính xách tay hoặc PC và số cổng mà bạn muốn máy chủ kết nối. giả sử 192.168.1.1 và cổng là 4444 trong tải trọng. Trước khi bạn chèn tải trọng, bạn sẽ phải lắng nghe trên cổng đó bằng cách sử dụng các công cụ như Netcat. Sau khi bạn đã tiêm nó, bạn sẽ nhận được kết nối từ máy chủ đến thiết bị của mình.
Tại sao những kẻ tấn công cần một shell đảo ngược?
Tại sao những kẻ tấn công cần chúng? Nói chung là do tường lửa. Tường lửa giới hạn lưu lượng đến do kẻ tấn công gửi đến máy chủ, nhưng nó không giới hạn lưu lượng đi mà máy chủ gửi đến người dùng/kẻ tấn công. Các máy chủ bị tấn công thường chỉ cho phép kết nối trên các cổng cụ thể. Ví dụ: một máy chủ web chuyên dụng sẽ chỉ chấp nhận các kết nối trên các cổng 80 và 443. Điều này có nghĩa là không có khả năng thiết lập trình nghe shell trên máy chủ bị tấn công.
Mặt khác, tường lửa thường không giới hạn các kết nối gửi đi. Do đó, kẻ tấn công có thể tạo kết nối ngược bằng cách thiết lập trình nghe và máy chủ sẽ đóng vai trò là người dùng trong trường hợp này, sau đó gửi lưu lượng truy cập cho kẻ tấn công. Tất cả những gì kẻ tấn công cần là một máy có địa chỉ IP và một công cụ như Netcat để tạo trình nghe và liên kết quyền truy cập trình bao với nó.
Sự khác biệt giữa tấn công qua mạng WAN và LAN
Việc thiết lập trình bao đảo ngược qua mạng LAN khá đơn giản. Bạn chỉ cần biết địa chỉ IP riêng của mình và địa chỉ IP riêng của nạn nhân. Giả sử bạn đang ở trong mạng 192.168.1.0 và địa chỉ IP của bạn là 192.168.1.10; địa chỉ IP của nạn nhân là 192.168.1.20. Bây giờ, bạn sẽ nhận được kết nối bằng cách đưa vào một tải trọng có địa chỉ IP của bạn và cổng mà bạn muốn nạn nhân kết nối.
Còn mạng WAN thì sao? Đây là nơi nó có một chút phức tạp. Những gì chúng tôi phải làm là thay thế IP riêng của chúng tôi bằng IP công cộng mà bạn có thể tìm thấy trên google bằng cách tìm kiếm như thế này: “địa chỉ IP công cộng của tôi là gì”. Chúng ta xong việc ở đây chưa? Không thực sự, nhưng chúng tôi đang tiến một bước gần hơn. Giả sử bạn đã có cách hoặc tìm ra lỗ hổng để đưa một tải trọng của trình bao đảo ngược vào máy chủ. Nạn nhân/máy chủ bị tấn công sẽ cố gắng kết nối với địa chỉ IP công cộng của bạn vì bạn đã đặt IP công cộng trong tải trọng của mình. Yêu cầu mà nạn nhân gửi sẽ đến bộ định tuyến của bạn trước trình nghe trên máy của bạn. Bộ định tuyến của bạn phải biết nơi chuyển tiếp yêu cầu đó tới các thiết bị được kết nối với bộ định tuyến. Nó có thể được thực hiện bằng cách bật Chuyển tiếp cổng trên bộ định tuyến của bạn,
Cuộc tấn công này có khối lượng công việc ít hơn nếu địa chỉ IP công cộng của bạn là tĩnh, điều này không cần thiết và không phổ biến. IP công cộng cho bộ định tuyến do ISP của bạn cung cấp có thể là tĩnh hoặc không. Địa chỉ IP động là những gì chúng ta thường có điểm chung với IP công cộng. IP động có nghĩa là IP công cộng của bạn sẽ thay đổi bất cứ khi nào bạn thiết lập lại kết nối với internet (khởi động lại bộ định tuyến, v.v.). Trong trường hợp này, IP trước đó của bạn được ghi trong tải trọng sẽ không được sử dụng. Nhưng vẫn có nhiều cách sáng tạo hơn và cách làm khác hơn so với phương pháp này.
đây là một trang cheat shell đảo ngược dành cho tất cả các bạn.
Làm thế nào để ngăn chặn nó?
Cách tốt nhất để tránh đảo ngược shell là bảo vệ chống lại các cuộc tấn công cho phép kẻ mạo danh giành được quyền truy cập shell ngay từ đầu. Bạn có thể vô hiệu hóa hầu hết các công cụ giúp tạo trình bao đảo ngược. Như bạn có thể thấy từ bảng gian lận ở trên, các shell đảo ngược có thể được tạo bằng các công cụ và ngôn ngữ khác nhau. Do đó, bạn có thể gây khó khăn hơn cho kẻ tấn công, nhưng không phải là không thể.
Thẩm quyền giải quyết
Những người đóng góp cho Wikipedia. (2022, ngày 18 tháng 10). mã vỏ . Wikipedia.https://en.wikipedia.org/wiki/Shellcode
Nidecki. (2019, ngày 26 tháng 8). Shell đảo ngược là gì . acunetix.https://www.acunetix.com/blog/web-security-zone/what-is-reverse-shell/
GeekforGeek. (2022, ngày 27 tháng 9). Sự khác biệt giữa Bind Shell và Reverse Shell .https://www.geeksforgeeks.org/difference-between-bind-shell-and-reverse-shell/

![Dù sao thì một danh sách được liên kết là gì? [Phần 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































