J2TEAM Security: A must-have extension for Chrome users. Install now!

Phân tích mã độc tự động Like, Follow, Share và Spam trên Facebook

Trước đây mình đã từng viết một bài về vấn đề “Nhạc nền trên Facebook”. Tuy nhiên tới hiện tại thì các kiểu lừa đảo người dùng trên Facebook vẫn xảy ra hằng ngày và vẫn rất nhiều bạn bị mắc bẫy khi tin vào những thứ như “Thay đổi giao diện trên Facebook”, “Thêm nhạc nền vào Facebook”, “Đổi tên Facebook lần thứ 6″, “Vẽ chibi chỉ với vài thao tác đơn giản”,…
ma-doc-facebook

Trước đây mình đã từng viết một bài về vấn đề “Nhạc nền trên Facebook”. Tuy nhiên tới hiện tại thì các kiểu lừa đảo người dùng trên Facebook vẫn xảy ra hằng ngày và vẫn rất nhiều bạn bị mắc bẫy khi tin vào những thứ như “Thay đổi giao diện trên Facebook”, “Thêm nhạc nền vào Facebook”, “Đổi tên Facebook lần thứ 6″, “Vẽ chibi chỉ với vài thao tác đơn giản”,…

Hình thức lừa đảo chung

Đánh vào tâm lý tò mò và thích sự mới lạ của nhiều người, những kẻ lừa đảo trên Facebook đã tạo ra ngày một nhiều những chiêu trò thu hút thị hiếu số đông để chuộc lợi. Hầu như những kiểu lừa đảo này đều có dạng:
  • Đầu tiên, đưa ra một thông điệp giới thiệu về một chức năng nào đó mà Facebook không có sẵn để khơi gợi tính tò mò của người dùng.
  • Giới thiệu cách thêm “chức năng” đó bằng cách yêu cầu người dùng mở một liên kết chứa mã độc (viết bằng JavaScript). Những liên kết này thường được che mắt bằng các dịch vụ rút gọn liên kết như TinyURL, Goo.gl hay Bit.ly.
  • Yêu cầu người dùng chạy đoạn mã JavaScript đó thông qua các add-on cho phép “tiêm” JavaScript vào trong trang Web, ví dụ như Greasemonkey (dành cho Firefox), Tampermonkey (dành cho Chrome). Cũng có trường hợp kẻ lừa đảo yêu cầu người dùng chạy các đoạn mã này trực tiếp qua Console của trình duyệt.

Bạn sẽ nhận được những gì?

Sau khi làm theo những hướng dẫn như trên, chức năng mới thì chẳng thấy đâu, nhưng vô tình bạn đã tiếp tay kẻ lừa đảo phát tán lại chính “bài hướng dẫn” đó. Phát tán ở đây chính là sau khi chạy đoạn JavaScript, bạn sẽ:
  • Spam lên tường tất cả danh sách bạn bè của mình với các bài post hướng dẫn lừa đảo.
  • Đăng bài hướng dẫn lừa đảo vào tất cả các nhóm mà bạn tham gia
  • Đăng lên tất cả những trang mà bạn đã Like
  • Tag tất cả bạn bè của bạn vào một status hướng dẫn tương tự.
  • Tự động theo dõi rất nhiều người lạ mà bạn thậm chí chưa từng biết
  • Và còn nhiều những điều tệ hại hơn nữa...
ma-doc-ve-chibi-tren-facebook

* Hậu quả: Bạn bè than phiền vì bị spam, bị tag vào những status rất… không liên quan hay thậm chí là hủy kết bạn với bạn. Hoặc tệ hơn nếu những người bạn của bạn vô tình lại làm theo những gì bạn gửi cho họ chỉ vì… tò mò như bạn.

Phân tích một mẫu mã độc có khả năng… vẽ Chibi?

Hôm nay chúng ta sẽ cùng nhau phân tích một đoạn mã độc để chứng minh cho những nguy hiểm tiềm ẩn mà mình nói bên trên. Mấy hôm nay có một vài người bạn đã spam tin nhắn hướng dẫn cách vẽ Chibi cho mình và gửi cho mình liên kết hướng dẫn http://bit.ly/chibinew8. Sau khi truy cập liên kết trên, chúng ta được dẫn tới trang này:

ma-doc-chibi-manga


Kẻ lừa đảo còn cung cấp chi tiết hướng dẫn cho cả Chrome và Firefox:

ma-doc-ve-chibi


Thực ra cả 2 hướng dẫn trên chỉ khác nhau ở bước 3, mục đích để mở Console của trình duyệt. Đối với Chrome là F12 để bật Developer Tools (Công cụ cho nhà phát triển), sau đó vào thẻ Console. Còn đối với Firefox, nhấn tổ hợp phím Ctrl+Shift+K sẽ truy cập trực tiếp Console. Những công cụ trên được các trình duyệt cung cấp cho nhà phát triển để các Web Master, Web Designer có thể debug (gỡ lỗi) trong quá trình phát triển Website của họ. Tuy nhiên chức năng này hiện tại đã bị nhiều kẻ lừa đảo lợi dụng để dụ nạn nhân thực thi mã độc trên chính máy của họ mà không hề hay biết.

Chúng ta cùng nhau lần theo dấu vết của mã độc, mình sẽ nhấp vô liên kết ở bước 1. Chúng ta được dẫn tới 1 liên kết chứa mã JavaScript như sau:

phan-tich-ma-doc-facebook

Tệp tin TXT này chứa đoạn mã JavaScript đã được mã hóa và làm rối (obfuscation) để tránh bị phát hiện những gì sẽ được thực thi. Chúng ta sẽ giải mã đoạn mã độc trên. Trước tiên mình lưu tệp TXT này về máy và đổi tên thành chibi.js.

Đầu tiên, để dễ quan sát mã nguồn, mình thực hiện thao tác định dạng lại mã nguồn bằng một công cụ trực tuyến, ta được tệp tin đã được định dạng lại như sau:

phan-tich-ma-doc-tren-facebook


Tiếp tục Format lần 2 thông qua Scratchpad của Firefox, chúng ta được:

phan-tich-ma-doc-facebook

Bạn thấy gì thay đổi sau lần Format thứ 2 không? Đó là Scratchpad đã giải mã các phần tử trong mảng. Chúng ta thấy có một phần tử rất nguy hiểm ở đây là “fb_dtsg” – Anti-CSRF Token của Facebook – dùng để chặn hình thức tấn công CSRF (hiểu nôm na là hình thức tấn công “mượn gió bẻ măng”).
var fb_dtsg = document.getElementsByName(‘fb_dtsg’)[0].value;
Phân tích dòng này ta thấy: tìm phần tử có tên là fb_dtsg sau đó lấy giá trị gán vào biến cùng tên. Mình sẽ cho các bạn thấy trực tiếp trên Facebook:

facebook-worm

Xem mã nguồn của tại trang chủ của Facebook (trường hợp đã đăng nhập) và tìm kiếm từ khóa name=”fb_dtsg”, Chrome cho ta biết có 8 kết quả tìm được.


facebook-security-token

Mở Console và chạy lệnh getElementsByName ta thấy trình duyệt trả về một mảng gồm 8 phần tử – 8 input ẩn có thuộc tính name là fb_dtsg.


facebook-security-token

Cuối cùng, ta lấy giá trị của phần tử đầu tiên.

Phân tích dòng tiếp theo:
var user_id = document.cookie.match(document.cookie.match(/c_user=(\d+)/)[1]);
Dòng này có tác dụng sử dụng Regex (biểu thức chính quy) để lấy giá trị của Cookie có tên là c_user chứa ID của người dùng hiện đang đăng nhập:

virus-facebook-steal-cookie


* Phân tích một số hàm được thực thi trong đoạn mã độc “vẽ chibi” này:

virus-on-facebook

Hàm với tên gọi “a” này sẽ ép bạn Theo dõi những người mà bạn chẳng hề biết thông qua Ajax


ma-doc-tren-facebook

Đây là hình ảnh gói tin mà trình duyệt bắt được khi bạn nhấn nút Follow một ai đó. Bạn thấy đường dẫn Request URL không? Nó chính là giá trị của biến url4 trong hàm “a” của đoạn mã độc “vẽ chibi” trên.

Phân tích hàm tiếp theo:

ma-doc-follow-facebook

Cái tên nói lên tất cả – sublist: hàm này có tác dụng ép bạn theo dõi những danh sách được tạo sẵn bởi kẻ lừa đảo. Bạn theo dõi danh sách đồng nghĩa với việc theo dõi tất cả những thành viên nằm trong danh sách đó. 


Hàm tiếp theo với tác dụng Like Fan Page, mình đã giải mã nên các bạn có thể xem chi tiết các ID của những Page sẽ nhận được Like:

facebook-malware

Hàm Like được gọi 6 lần đồng nghĩa với việc nếu chạy đoạn mã độc “vẽ chibi” này, bạn sẽ Like 6 page mà bạn không hề hay biết.


* Chú ý: Ngoài ra còn một số hàm độc hại khác, trong đó mình thấy có cả hàm tự động cài ứng dụng để lấy Access Token. Khi nào có thời gian mình sẽ phân tích cụ thể và cập nhật bài viết này. Có một điều chắc chắn là đoạn mã độc “vẽ chibi” này không có một dòng nào cho thấy tác dụng như nó giới thiệu – đó là vẽ chibi?

* Vì lý do an toàn, tránh kẻ xấu lạm dụng nên mình sẽ không công khai đoạn mã độc mà mình đã giải mã.

Chúng ta cần làm gì để tự bảo vệ bản thân và bạn bè?

Mặc dù là mạng xã hội lớn nhất hành tinh với hơn 1 tỷ người dùng – Facebook đã và vẫn đang cố gắng bảo vệ người dùng của họ khi đưa ra cảnh báo nếu phát hiện người dùng tự chạy những đoạn mã JavaScript trên Console trong khi đang truy cập Facebook – https://www.facebook.com/self-xss.

Tuy nhiên, chúng ta không nên chỉ trông chờ Facebook bảo vệ mình trong khi bản thân thì vẫn làm theo những bài hướng dẫn “nguy hiểm” kia. Điều này chẳng khác gì bạn cài một chương trình Anti-Virus sau đó tải tất cả những tệp tin khác về chạy mà không tìm hiểu nguồn gốc những tệp tin đó tới từ đâu, có an toàn hay không. Bạn tuyệt đối không nên tin vào những chức năng mới mẻ do mọi người giới thiệu cho bạn, trừ khi những chức năng đó được giới thiệu trên page chính thức của Facebook.

Hãy tự bảo vệ mình và hãy là những người dùng Facebook thông thái, bạn nhé!

Copyright: Bài viết bởi tác giả Juno_okyo, được đăng tại Juno_okyo's BlogSecurityDaily.NET. Vui lòng ghi rõ nguồn khi đăng tải lại trên các trang Web khác!
Leader at J2TEAM. Website: https://j2team.dev/