VISIBILITY - No visibility - No security, two sides of a coin

Mã độc thời nay gõ vài dòng

Muôn hình vạn vẻ tưởng hư không

Tha nhân ngây dại hồn bay bổng

Khờ tải đem về nhói cả lòng

Giá lạnh đã về đâu chỉ mộng

Trống giục báo động trải dòng sông

Chẳng biết lần đâu giữa vạn sóng

Thấu thị đâu rồi ta ngóng trông

Mã độc làm ta thoáng giật mình

Giả nhân giả nghĩa hồn thất kinh

Anti-virus thành kẻ thộn

Thủ đoạn khôn lường hóa Khổng Minh

Mây mù phủ trắng khó phân định

Lòng đau dạ buốt vạn cuộc tình

Thấu thị ngăn sầu đong trọng kính

Giã biệt mã độc ngàn xuân xinh.


Chắc chúng ta đều đã từng xem bộ phim Hollywood “Hollow man”. Bộ phim kinh dị kể về một nhóm nghiên cứu về công nghệ tàng hình trên cơ thể người. Nhân vật Caine sau khi được thử nghiệm thành công khả năng tàng hình đã thực hiện việc giết người trả thù mà rất lâu sau mới bị phát hiện và ngăn chặn. Một bối cảnh rất giống với câu chuyện an toàn thông tin chúng ta đang đối mặt ngày hôm nay. Không chỉ kẻ tấn công, mà ngay cả phương thức tấn công cũng đang vô hình với rất nhiều doanh nghiệp vốn đang có muôn vàn khó khăn khác nữa trong phòng thủ.

Visibility hay thấu thị như đã đề cập ở kỳ trước mang đến cho chúng ta khả năng theo dõi liên tục cả trước, trong và sau khi cuộc tấn công xảy ra, cũng như nâng cao khả năng phản ứng khi có sự cố. Về lý thuyết, không có nghĩa là nhìn thấy thông tin được gọi là visibility mà còn là khả năng ghi nhận mọi thứ, sử dụng thông tin và hỗ trợ tìm kiếm các mối đe dọa từ thông tin nhận được. Về kỹ thuật, visibility không đơn thuần là thu thập các dữ liệu nhật ký (log) từ hệ thống rồi lưu trữ tập trung, tìm kiếm mà phải tường minh và tối ưu hóa thông tin để bất cứ ai cũng có thể hiểu được. Trong vai trò những người làm an toàn thông tin, đặc biệt thực hiện giám sát, có bao giờ chúng ta thực sự chú ý và hiểu rõ "một kết nối Remote Desktop vào lúc 3 giờ sáng", "một tiến trình chưa từng xuất hiện trong hệ thống trước đó", "một file Word gọi Powershell"..., chúng có liên quan gì, nguồn gốc từ đầu, khả năng ảnh hưởng như thế nào? Do đó chúng ta càng hiểu sâu và bao quát, nâng cao khả năng thấu thị cho hệ thống thì chúng ta càng có lợi và kẻ tấn công sẽ càng ít đất diễn hơn. Hãy dừng tự hỏi bản thân: visibility có thực sự hiệu quả và hỗ trợ chúng ta thế nào trong an toàn thông tin?

Nhìn và hiểu, rồi hành động…

Tổ chức của bạn có những bức tường lửa hiện đại nhất, có những giải pháp phòng chống xâm nhập hữu hiệu nhất, hay các giải pháp phòng thủ bên ngoài tốt nhất. Nhưng nói cho cùng nếu một người dùng trong hệ thống không biết an toàn thông tin, không đề phòng bị đánh lừa bởi các kỹ thuật lừa đảo (phishing) thì hệ thống của bạn chẳng bao giờ an toàn chứ đừng đề cập là an toàn nhất.

Để có cái nhìn rõ nhất đối với visibility, chúng ta hãy đi vào một trường hợp cụ thể. Vào một ngày đẹp trời nhưng có lẽ là u ám với người giám sát, một cảnh báo “Potential abandoned malware detection” xuất hiện trên màn hình giám sát. Cảnh báo này có ý nghĩa phát hiện sự khả nghi khi một máy chủ thực hiện gửi yêu cầu phân giải DNS nhiều lần và đều đặn theo chu kỳ đến một tên miền, đây là hành vi thường thấy đối với mã độc thực hiện phân giải tên miền C&C (Command and control server) nhưng tên miền đã bị chết.

Lập tức việc điều tra sâu vào cảnh báo được thực hiện. Người giám sát phát hiện được rằng, cảnh báo này xuất phát từ máy có địa chỉ IP 172.16.10.20.

Việc điều tra tính huống này sẽ được trình bày trong 2 trường hợp sau: không thực sự có visibility và có visibility thực sự.

Không thực sự có visibility (Visibility can solve a problem)…

Trường hợp đầu tiên là không thực sự có visibility. Người giám sát thực hiện điều tra trực tiếp trên máy chủ được cảnh báo “Potential abandoned malware detection” bằng một số công cụ như Sysinternal, Wireshark… Sử dụng Wireshark và TCPview theo dõi thông tin luồng mạng trên máy chủ một thời gian để tìm kiếm thông tin liên quan về kết nối C&C.

Kiểm tra từng process trên máy chủ bằng công cụ Procexp để tìm kiếm dấu hiệu liên quan đến các hành vi gửi yêu cầu đến C&C. Người giám sát phát hiện tiến trình khả nghi taskmgr.exe có kết nối bất thường.

Lập tức lấy file thực thi của tiến trình đưa vào công cụ sandbox miễn phí Hybrid-analysis để phân tích hành vi của file khả nghi.

Hành vi của file khả nghi được chỉ rõ là mã độc, thay đổi file hosts, thực hiện các kết nối domain lạ bên ngoài. Lúc này khó khăn rõ ràng nhất đến với người giám sát, khi họ thiếu visibility trên toàn hệ thống, không thể biết được file này đã tồn tại trên những thiết bị nào, lần đầu xuất hiện ở đâu, bởi ai, nó có thay đổi tên, các file liên quan… Rất nhiều câu hỏi mà người giám sát phải trả lời để tìm ra gốc rễ việc lây nhiễm và khử sạch hệ thống. Không có visibility, không còn cách nào khác, người giám sát bắt buộc phải rà soát toàn bộ các thiết bị trên hệ thống theo các bước tương tự đối với máy chủ được cảnh báo.

Có visibility thực sự (True visibility can solve the problem)…
Trường hợp thứ hai lúc này visibility sẽ hỗ trợ đắc lực cho việc điều tra. Người giám sát thực hiện điều tra trên máy chủ được cảnh báo bằng công cụ AMP for Endpoint đã được cài trên đó. Sử dụng tính năng Device Trajectory mang đến cho ta visibility tại thời điểm cảnh báo đưa ra để xem xét chuyện gì đã xảy ra, ai đã làm gì, tại sao lại cảnh báo…

Theo như cảnh báo “Potential abandoned malware detection”, có một tiến trình đã thực hiện yêu cầu phân giải DNS tại thời điểm này. Người giám sát dò theo tiến trình và phát hiện taskmgr.exe (tên của một ứng dụng quản lý tác vụ của hệ điều hành Windows, cung cấp thông tin hiệu năng hệ thống, tiến trình đang chạy, bộ nhớ...) có gửi các yêu cầu đến một số tên miền lạ, đây rõ ràng là dấu hiệu bất bình thường.

Khi đã nắm được tiến trình khả nghi, người giám sát thực hiện phân tích file thực thi của tiến trình này bằng sandbox ThreatGrid để nắm được hành vi của nó.

Ta có thể nhanh chóng biết được rằng hành vi chính của mã độc này là thực hiện thay đổi cấu hình file hosts, mở kết nối HTTP. Tuy nhiên, do domain được gửi yêu cầu đã chết nên mã độc vẫn tiếp tục gửi yêu cầu lên domain này định kỳ. Phần lớn chúng ta sẽ nhanh chóng đánh giá rằng mã độc này là vô hại, bởi nó không thể kết nối về C&C. Tuy nhiên điều đó không bao giờ đúng bởi trong bối cảnh an toàn thông tin phức tạp như hiện nay, hôm nay có thể mã độc thực hiện hành vi này, ngày mai cũng chính mã độc đó có thể thay đổi thực hiện hành vi khác, che giấu và tránh phát hiện, kể cả bởi sandbox. Do đó chúng ta phải nhanh chóng phát hiện và gỡ bỏ, giảm thiểu thời gian và ảnh hưởng của mã độc tồn tại. Tiếp theo thực hiện điều tra trên toàn hệ thống phải tìm ra và đánh giá phạm vi ảnh hưởng trên toàn bộ để khoanh vùng và bóc tách mã độc, bằng công cụ ThreatResponse đi kèm trong bộ giải pháp AMP for Endpoint của Cisco.

Sau khi đưa thông tin hash của file mã độc vào công cụ Threat Response, người giám sát nhanh chóng xác định hiện tại chỉ có 1 máy chủ là hash này từng xuất hiện, các URL, IP liên quan, thư mục và tên của file đó trong hệ thống.

Từ thông tin có được về thời gian lần đầu file mã độc xuất hiện trên hệ thống, tài khoản người dùng và máy chủ, người giám sát xác định được nguồn gốc file mã độc, vị trí được người dùng tải về ở thư mục Desktop và tiến hành gỡ bỏ.

Rõ ràng khi không có visibility thực sự, người giám sát vẫn có khả năng tìm ra được nguyên nhân, phạm vi cũng như ảnh hưởng của cuộc tấn công. Tuy nhiên, sẽ phải mất rất nhiều thời gian và công sức để đạt được điều đó. Trong cuộc chơi an toàn thông tin này, thời gian là thứ rất là xa xỉ mà chúng ta không kiểm soát được. Chúng ta chỉ có những cơ hội và sự lựa chọn để đưa ra những quyết định đúng đắn, đúng thời điểm và hợp lý nhất. Từ trường hợp cụ thể trên, người giám sát với hỗ trợ đắc lực từ visibility nhanh chóng đưa ra phân tích và kết luận của chuỗi tấn công liên quan đến cảnh báo nhận được.

Với người giám sát an toàn thông tin, các cảnh báo về khai thác lỗ hổng, tấn công chúng ta thấy trên màn hình giám sát như đã nói chẳng khác nào tiếng vang trong rừng, không rõ ràng, chỉ là nửa sau của câu chuyện hệ thống ta bị tấn công. Vì giải pháp hiện tại không thể xác định toàn bộ mối đe dọa và chỉ khi sự việc đã xảy ra rồi thì chúng ta mới nhận được cảnh báo. Khoảng trống ấy có thể được bù đắp rất rõ ràng bằng việc trang bị visibility cho hệ thống chúng ta vốn luôn đầy rẫy các lỗ hổng và con đường cho kẻ tấn công đi vào. Visibility không còn là một sự lựa chọn, một sự nâng cấp cho hệ thống chúng ta mà là yêu cầu bắt buộc trong xu thế an toàn thông tin đòi hỏi khả năng thích ứng cao trong phòng chống trước các cuộc tấn công mạng ngày càng tinh vi.

Lời kết kì 2…

Qua tình huống thực tế ở trên, sự so sánh giữa hai trường hợp điều tra cho ta thấy sự khác biệt mà visibility thực sự mang lại là độ chính xác, hiệu quả thời gian trong việc đối phó và phản ứng trước các cuộc tấn công mạng: nhận biết nhanh chóng nguồn gốc cuộc tấn công, khả năng lây nhiễm phát tán, phạm vi ảnh hưởng, hành vi đe dọa. Để từ đó người giám sát hay quản trị có được những quyết định đúng mục tiêu và đúng thời điểm khi hệ thống của mình bị tấn công.

Các doanh nghiệp hằng năm đầu tư hàng tỷ, hàng triệu dollar vào an toàn thông tin nhưng vẫn luôn tồn tại những điểm yếu, những điểm mù trong bảo mật và vận hành bất kể có các giải pháp như Firewall, IDS, EDR... Trong khi đó kẻ tấn công vẫn giữ niềm đam mê với việc khai thác vào các điểm yếu, điểm mù đó bất cứ khi nào có cơ hội. Chúng ta không thể trông đợi vào các giải pháp bảo mật bảo vệ hoàn toàn chúng ta, nhưng cũng đừng ném chúng ra đường khi thất bại trong việc ngăn chặn kẻ tấn công. Người làm an toàn thông tin phải chấp nhận các thử thách, không ngừng theo dõi và tập trung vào các mục tiêu, lượm nhặt các mảnh ghép để đưa ra một bức tranh lớn hơn, mục đích lớn hơn: phát hiện đầy đủ các cuộc tấn công kể cả khi chúng ta không phải là kẻ tấn công. Để hoàn chỉnh bức tranh phòng thủ an toàn thông tin trong bối cảnh ngày hôm nay, bài viết kỳ tiếp theo sẽ chỉ rõ an toàn thông tin không chỉ là vấn đề công nghệ thông tin, chúng ta rất cần Human Firewall.

Phạm Văn Luận – Kỹ sư GP ATTT, HSE