2. Demo sử dụng Weevely kết hợp Commix để tạo và tải lên backdoor
2.1. Giới thiệu sơ qua về công cụ Commix
Commix (là từ vi t t t c a [Comm] and [i]njection e[x]ploiter - trình khai thác chèn l n ). Đ y l l một công cụ kiểm tra thâm nh p mã nguồn mở (open sourse pen-t st tool) ợc vi t bởi Anastasios Stasinopoulos, hỗ trợ vi c t ộng hóa vi c phát hi n và khai thác các lỗ hổng chèn l nh
B n quyền công cụ từ năm 2014 n th ểm hi n tại thuộc về tác gi An st s os St s nopoulos. C n tr n n y l p ần mềm miễn p í: n i dùng có thể phân ph i lại và/hoặc s ổ nó t o ều kho n c a Giấy phép Công cộng GNU do Tổ chức Phần mềm T do (Free Software Foundation) xuất b n, phiên b n 3 c a Giấy phép hoặc bất kỳ phiên b n nào m n.
Nhữn ặc tính nổi b t (theo công b c a trang ch cơng cụ): Cơng cụ có một s ặc tính nổi b t v n i s dụn n s u:
- Dễ s dụng: T ộng hóa vi c phát hi n và khai thác các lỗ hổng chèn l nh trong (các) tham s dễ bị tấn công và/hoặc các HTTP header. - Tín ộng cao. Tồn bộ những thành phần cần thi t ể th c hi n
những cuộc tấn công chèn l nh ch ng lại nhiều loại h ều hành và ứng dụn ều ợc tích hợp trong cơng cụ
- Tính mơ- un ó : N i dùng có thể phát triển và dễ dàng nh p các mô- un r ên m n ể tăn k năn tấn công c a commix và/hoặ ều ch nh nó theo nhu cầu c a họ.
- Tín t n t í éo Comm x t n t í v i nhiều công cụ kiểm tra thâm nh p k n : Metasploit Framework. Burp-suite, SQLMap, vv, do ó tỷ l phát hi n v k t t n ôn ợ tăn o.
- Tín nền t n : Comm x ợc vi t bằn Pyt on o ó nó yêu cầu Pyt on ể có thể chạy trên tất c các nền t ng.
- Miễn phí và mã nguồn mở
Trang ch công cụ: https://commixproject.com
60
2.2. Các kỹ thuật tấn công được hỗ trợ
Commix hỗ trợ phát hi n và khai thác dạng tấn công chèn l nh sau: - Tấn công chèn lệnh dựa trên kết quả (Results-based): Trong các cuộc tấn
công chèn l nh d a trên k t qu , kẻ tấn cơng có thể tr c ti p suy ra k t qu c a l n ợ v o t ôn qu p n hồi c a ứng dụng web. Các cuộc tấn công chèn l nh d a trên k t qu ợc chia thành hai kỹ thu t:
Tấn công chèn lệnh dựa trên kết quả (cổ điển): Kỹ thu t cổ ển là
kiểu tấn ôn n n và phổ bi n nhất. Cụ thể n kẻ tấn công s dụng một s tốn t phổ bi n, có thể ghép các l nh g n ầu v i các l n ợ v o oặc loại trừ các l nh g n ầu ch th c hi n các l n ợ v o.
Shellshock: Lỗ S lls o k ợc phát hi n trong Bash, một
công cụ ợc s dụng rộng rãi bởi h ều hành Unix và nhiều bi n thể c a nó, bao gồm phần mềm nguồn mở Linux và OS X c a Apple.
Lọc ICMP (ICMP exfiltration) Lọc DNS
Kỹ thuật đánh giá mã động (Tấn công chèn lệnh dựa trên đánh giá): Vi c chèn l n t ôn qu n m ộng diễn ra khi ứng
dụng dễ bị tấn công s dụng hàm eval(), hàm n y ợc s dụn ể th t ộn m ợc chuyển (t i hàm eval() trong th i gian chạy. H m v l() ợc cung cấp bởi nhiều ngôn ngữ thông dị n Java, Javascript, Python, Perl, PHP và Ruby.
- Tấn công chèn lệnh mù (Blind): S khác bi t chính giữa các cuộc tấn
công chèn l nh d a trên k t qu và các cuộc tấn công chèn l nh mù nằm ở cách dữ li u ợc truy xuất sau khi th c hi n l n s ll ợ v o. Cụ thể n ó n ữn tr ng hợp một ứng dụng sau khi th c hi n l n ợc vào không tr lại bất kỳ k t qu nào cho kẻ tấn công. Trong những tr ng hợp này, kẻ tấn cơng có thể gián ti p suy ra k t qu c a l n ợc v o ằng cách s dụng hai kỹ thu t sau:
Time-based (Blind): D a trên th i gian (Mù): Thông qua kỹ thu t
này, kẻ tấn công chèn và th c hi n các l n ể hiển thị ộ trễ th i gian. Bằn o t i gian ứng dụng ph n hồi, kẻ tấn cơng có thể x ịnh xem l n ợc th c thi thành công hay thất bại. Chức
61
năn tron B s s ll ó t ể gi i thi u ộ trễ th i gian là ch ộ ng o ó ằn qu n s t ộ trễ th i gian, kẻ tấn cơng có thể suy ra k t qu c a l n ợ v o.
File-based (SemiBlind): D a trên t p tin (B n mù): Kỹ thu t này
d a trên một logic rất n n khi kẻ tấn công không thể quan sát k t qu th c hi n một l n ợ v o t kẻ tấn cơng có thể ghi chúng vào một t p mà hãn có thể truy c p ợc.
2.3. Cài đặt công cụ
- Mô tr n ặt: Kali Linux 2021.1
- Các yêu cầu tr k ặt: M y Pyt on 2.6 2.7 oặc 3.x - Ti n n ặt: T i Commix về máy từ trang github