Nghỉ hè. Như một cái lệ, tôi bắt đầu một chương trình học tập rèn luyện intensive dành cho chính mình. Cũng không khổ sở gì lắm, vì bản thân tôi thích việc học. Mỗi tội là điều ấy không làm cho cái học dễ hơn.
Một buổi sáng bình thường bao gồm việc tôi lê lết từ công viên về sau một cuốc chạy luyện tập 5K plan, lê lết ngồi vào đánh vật với những bourrée, étude, aria rồi lại lê lết sách bút lên học trên Coursera, Skillshare và những thứ tương tự. (Tuổi trẻ đúng là một điều diệu kỳ theo mọi nghĩa hiểu của từ này!)
Tôi vừa mới cày xong một cái chứng chỉ nữa từ Google là Google Cybersecurity. Vẫn là chuỗi khoá học nữa từ bác Gồ, kiến thức đủ để bạn chuẩn bị cho mức độ entry-level của một lĩnh vực nhất định. Khoá này tôi đánh giá là tập trung nhiều về khía cạnh giám sát (aka. Blue Team) của lĩnh vực An toàn thông tin, mang tính giới thiệu là chính. Giờ tôi thấy bạn đội mũ màu gì không quan trọng, quan trọng là bạn giỏi và ngầu 😎
Tôi hoàn thành 8 courses này trong 5 ngày. Có cái biết rồi, có cái chưa biết, tôi cứ nhặt nhạnh học được gì thì học. Tôi dành cả thanh xuân để học online và tự học mọi thứ nên mấy món MOOC này tôi thạo lắm.
Vụ học hành này tôi được sponsor từ phía Đại học Bách khoa Hà Nội và Trung tâm đổi mới sáng tạo quốc gia (NIC), đến năm nay là năm thứ hai tôi có học bổng này. Bạn đọc quan tâm có thể đăng ký với trường của bạn hoặc trực tiếp với bên NIC thông qua cộng đồng Phát triển Nhân tài số Google x NIC nhé.
Disclaimer là tôi chỉ biết mấy từ khoá nguy hiểm này có nghĩa là gì, chứ chưa có dùng nó thành thạo đâu nhé. Khổ thân tôi, phận làm gà con nhưng hay gáy to, lại cứ phải đi giải thích cho người khác hiểu mình vẫn là gà con…
1 – CIA
Cái dễ nhất thì ta đưa lên đầu. Cái này mà không biết thì… cho về vườn luôn, thôi khỏi hỏi thêm gì nữa. CIA không phải là Cơ quan Tình báo Trung ương Hoa Kỳ, mà là viết tắt của “Confidentiality” (Tính bí mật), “Integrity” (Tính toàn vẹn) và “Availability” (Tính khả dụng). Môn học Nhập môn an toàn thông tin trên trường chắc chắn sẽ dạy bạn thứ này.
Về cơ bản CIA phát biểu rằng thông tin cần phải được:
- Bảo đảm tính bí mật. Ai cần biết thì mới được biết. Không thì mời đi ra.
- Nguyên vẹn. Không bị xoá, chỉnh sửa, thêm bớt linh tinh. Ví dụ như tin nhắn tỏ tình của bạn không nên bị thằng bạn hacker biến thành một bức thư chửi rủa trên đường gửi đi.
- Khả dụng. Cần đến là có, chứ không phải bị mất, bị gián đoạn, không truy cập được, hay phải chầu chực chờ đợi hỏng hết cả việc.
Đây chính là nền tảng cho các nguyên lý đảm bảo an toàn thông tin sau này.
2 – SOC
Viết tắt của Security Operations Center, tiếng Việt là Trung tâm Giám sát/ Điều hành An ninh mạng. Đây là một đơn vị chịu trách nhiệm giám sát và xử lý các vấn đề về an toàn thông tin, làm full combo từ đầu đến cuối bao gồm: Phát hiện, phân tích, phản ứng, ngăn chặn, điều tra,…
Đối với những công ty hay tổ chức to bự, họ có nguyên một đơn vị SOC riêng, hoặc SOC là một phần của CSIRT (Computer Security Incident Response Team – Đội ứng cứu sự cố an toàn thông tin mạng). Còn nếu mà thiếu người (và thiếu tiền, và thiếu nhiều thứ khác) thì… có khi là chẳng có ai tính đến câu chuyện an ninh an toàn, nhưng dù sao lời khuyên chung vẫn là doanh nghiệp nên có nhận thức và cân nhắc về việc xây dựng một nhóm SOC, nhất là khi một phần lớn hoạt động doanh nghiệp ngày càng phụ thuộc nhiều vào không gian mạng.
- Ở tầng 1 là những SOC Analyst theo dõi và tạo ticket cảnh báo hàng ngày, ít kinh nghiệm (nhưng chắc chắn không gà như tôi). Nếu các cảnh báo bảo mật được đánh giá với mức độ nghiêm trọng, nó sẽ được “leo thang” (escalate) để chuyển lên trên những chuyên gia ở các Tier 2.
- Ở Tier 2 là những người phụ trách phản ứng sự cố (Incident Responder) sử dụng các công cụ để xác định, phân tích, phân loại sâu hơn các sự kiện.
- Tầng thứ 3 là SOC Lead, có thể bao gồm thêm các Threat Hunter (người săn tìm mối đe doạ) và Forensic Investigator (nhà điều tra số). Đây là tập hợp những người nhiều kinh nghiệm và chuyên môn cao, chịu trách nhiệm trực tiếp xử lý sự cố và tích cực nghiên cứu về các mối đe doạ mới.
- Cuối cùng, trên đỉnh tháp là SOC Manager, người chịu trách nhiệm tiếp nhận thông tin từ Tier 3 và báo cáo tới các bên có liên quan, quản lý đội SOC và xây dựng các quy trình khác.
3 – Defense in Depth
Để đảm bảo một mối quan hệ khoẻ mạnh, bạn đã và đang làm gì? Nếu như câu trả lời của bạn là một thứ đơn giản và mặc định, kiểu như “Cho bạn gái đi shopping” và “Đưa bố mẹ đi chơi” thì, ờm, tôi cũng không phản đối, nhưng tôi nghĩ có lẽ bạn chưa được sáng tạo lắm. Nhỡ đâu trọng một ngày đẹp trời, bạn gái bạn đã giận dỗi và shopping không hề làm cho cô ấy nói chuyện với bạn, thì hãy hiểu là lớp phòng thủ duy nhất của bạn đã sập trước một sự cố mang tên “hờn dỗi”.
Defense in Depth là một nguyên lý phát biểu rằng bạn cần có cho mình nhiều lớp và nhiều phương thức bảo mật kết hợp với nhau để đảm bảo an toàn trước rủi ro và các mối đe doạ. Khi kẻ xấu tấn công, lớp bảo vệ bên ngoài rơi xuống thì bạn vẫn còn các lớp khác ở trong.
Tôi là tôi cũng nỗ lực “defense in depth” với bố mẹ tôi lắm. Ngoài công cuộc rửa bát, quét dọn và nấu nướng cơ bản, tôi thực hành đóng vai bác sĩ bấm huyệt vật lý trị liệu, bạn tâm giao, thợ sửa đồ, công nhân IT support, tài xế riêng và nhiều dịch vụ đảm bảo an ninh an toàn mối quan hệ bố mẹ – con cái khác. Nên là lắm lúc các cụ có giận tôi thì cũng không giận tôi được lâu, và tôi thì lại càng tự do bay nhảy khám phá.
Tôi học cái chứng chỉ này mà đau đầu vì có quá nhiều thứ được giới thiệu. Nguyên lý an ninh vô cùng nhiều, nhưng nếu chốt lại trong cái danh sách dài ngoằng của OWASP Security Principles thì bạn chỉ cần nhớ cái trên đây và vài cái nữa:
- Giảm thiểu vùng có thể tấn công: Hạn chế các attack vector, nghĩa là làm sao để kẻ xấu khó lòng đấm bạn hơn. Có thể đạt được điều đó nhờ thực hiện hạn chế quyền, tắt một vài tính năng không cần thiết…
- Cấp quyền tối thiểu (Least Privilege): Chỉ cho người dùng mức độ quyền hạn tối thiểu đủ để họ có thể làm được việc của mình. Nguyên lý này khá nổi tiếng.
- Phân chia nghĩa vụ (Separation of Duties): Một người chỉ nên làm việc anh ta đáng ra nên làm, không nên chõ mũi vào các công chuyện khác. Không chỉ trong bảo mật, nguyên lý này cũng hiện đi hiện lại như hồn ma bóng quế trong các câu chuyện như Lập trình (trong SOLID), Thiết kế hệ thống, Vận hành và Logistics…
- Đã fix thì fix cho đúng! Cách để sửa một cái bánh xe đang xịt lốp là phải vá víu nó cho cẩn thận, chứ không phải là chỉ bơm lại bánh. Nếu không vá cho tốt, leo lên xe đi được một quãng là bánh lại xịt. Làm bảo mật cũng vậy.
Đối với tôi, quan trọng nhất đến cuối ngày vẫn là “Keep security simple” (Giữ cho việc bảo mật đơn giản). Bản chất của con người là lười, đi theo thói quen cố hữu và luôn muốn tiết kiệm năng lượng, bạn nào học tâm lý học hành vi sẽ hiểu điều mà tôi muốn nói. Kỹ thuật hay phương pháp phức tạp sẽ chả có tác dụng gì nếu nó quá rắc rối – người ta sẽ tìm cách để đơn giản hoá và nhiều khi, vô tình mở ra những lỗ hổng mới.
4 – Hardening
Khoan đã khoan đã, vấn đề đầu tiên là tiền đâu?
Tôi tự hỏi liệu tôi phải đi giảng bài cho các bác như mấy anh sếp tôi thì liệu tôi có gặp phải ai có suy nghĩ rằng “Phải có tiền thì mới bảo mật được” hay không.
Không liên quan lắm, nhưng tôi đi chụp ảnh lâu năm rất ngứa ngáy trước suy nghĩ của nhiều người “Phải có máy xịn thì mới chụp đẹp”, hay tập thể chất thì lại cho rằng “Phải có đồ xịn thì tập mới khoẻ”. Đồng ý là tiền giúp bạn giải quyết nhiều vấn đề, nhưng nó chỉ cần khi bạn lên mức độ nâng cao (khi bạn đủ trình độ hiểu và cảm nhận được khác biệt mà sự nhiều tiền mang lại!). Mức cơ bản mà ta còn làm chưa nổi thì thôi khỏi tính chuyện nâng cao.
Quá trình tăng cường và gia tăng bảo mật hệ thống gọi là “Hardening” (từ này dịch ra không sát nghĩa nên tôi để nguyên thế). Bạn có thể thực hiện hardening với mọi thứ: Hệ điều hành, mạng máy tính, cloud…
Mức cơ bản nhất của nó là bạn có thứ gì đó mới cho hệ thống, bạn hãy cài đặt và cấu hình nó cho hợp lý để gia tăng bảo mật, chấm hết. Chưa cần phải lắp đặt hay mua giải pháp gì kinh khủng. Đa phần hệ thống của chúng ta bị “đấm” vì cài cắm chưa hợp lý (ví dụ: quên khoá cửa), chứ không phải vì thiếu tường cao cổng dày.
Để hardening hệ điều hành, bạn có thể thực hiện các thiết lập như Salting & Hashing (tôi hay thích gọi là “băm và muối” vì nghe nó cute), xác thực nhiều yếu tố (MFA – Multi-factor Authentication), CAPTCHA và reCAPTCHA, các chính sách về mật khẩu.
Để hardening các hệ thống Cloud, bạn có thể sẽ cần đến IAM (Identity Access Management – Quản lý Truy cập và Danh tính), các hypervisor (để phân tách môi trường host ra khỏi môi trường thực thi), thiết lập một baseline đủ an toàn, mã hoá và quản lý key hợp lý. Bảo mật Cloud thì phức tạp lắm, chia thành nhánh chuyên môn riêng và các job dành cho vị trí này. Tôi học mức độ đại cương mà đã phát lú vì nó quá khó.
Với mạng máy tính, bạn cứ làm cho tốt công cuộc thiết đặt tường lửa (WAF), phân chia mạng (Subnetting) cho hợp lý, rồi hẵng tính đến những cái khác, những cái mà tôi sắp nói tiếp dưới đây.
Một số phương pháp khác nhau có thể được kết hợp để gia tăng bảo mật mạng.
5 – IDS, IPS, EDR
IDS là viết tắt cho Intrusion Detection System (Hệ thống Phát hiện xâm nhập), còn IPS là viết tắt cho Intrusion Prevention System (Hệ thống Ngăn ngừa xâm nhập), nghe na ná nhau những cũng có vài điểm khác biệt.
IDS có nhiều loại bao gồm NIDS (Network IDS – Hệ thống phát hiện xâm nhập mạng), HIDS (Host IDS – Hệ thống phát hiện xâm nhập trên máy chủ/ thiết bị cuối) và Node IDS (Hệ thống phát hiện xâm nhập trên nút mạng). IPS cũng có phân loại tương tự là NIPS và HIPS. Thường các công cụ hiện nay cung cấp song song các tính năng IDS lẫn IPS, như Suricata, Snort hay Sagan…
Trong khi người bạn IDS cùi bắp chỉ la làng lên là “Có kẻ đột nhập!” thì IPS tỏ ra có ích hơn khi nỗ lực ngăn chặn phần nào đó sự xâm nhập đó. Tuy nhiên, hai hệ thống này chủ yếu chỉ bảo vệ bạn trước những mối nguy đã biết (nhờ vào các signature tấn công hoặc training anomaly-based, thứ mà tôi sẽ giới thiệu ở bài sau). Những kiểu tấn công hay mã độc lạ lùng có thể sẽ không được phát hiện.
EDR thì là Endpoint Detection & Response (Hệ thống phát hiện và phản hồi điểm cuối). EDR sẽ được cài vào máy đích (các endpoint) và thực hiện giám sát cho những con máy này. Hệ thống này “ngon” hơn ở chỗ nó cho phép phân tích chuyên sâu hơn về các hành vi bất thường theo dõi được, và cũng được cho là có khả năng phát hiện ra các mẫu đe doạ mới.
6 – SIEM & SOAR
Thầy tôi đã dạy rằng, đã là kỹ sư giỏi thì phải tìm mọi cách để có thể “lười”. Khai thác công cụ triệt để, làm sao đó để còn có thời gian sống một cuộc đời của người bình thường. NCSC vẫn hay dạy tôi câu chuyện của hai chữ “đam mê”, nhưng tôi cá là chẳng có ai đam mê đọc log đâu…
Chả nhẽ tôi lại mở từng cái một để xem hôm nay nó có cảnh báo gì? Ngồi làm thủ công thế thì chết. SIEM sẽ là thứ tổng hợp đống log ngồn ngộn và nhức mắt về thành một format thân thiện cho đôi mắt và (mong là) tinh thần của bạn. Viết tắt của Security Information & Event Management, công cụ này cung cấp một chiếc dashboard để bạn có thể dõi theo thông tin an toàn an ninh từ nhiều nguồn trong cùng một chỗ. Dĩ nhiên để lấy data về cũng đòi hỏi một chút setup và cài cắm rồi.
Các công cụ SIEM nổi tiếng có thể kể đến như Splunk, Chronicle, Elastic, Exabeaem, LogRhythm, AlienVault OSSIM, IBM QRadar Security Intelligence Platform…
Một khái niệm rộng hơn bao hàm cả SIEM là SOAR – Security Orchestration, Automation & Response, một tập hợp các ứng dụng, công cụ, workflow giúp bạn phản hồi trước các sự kiện bảo mật một cách tự động. Túm lại là tự động hoá quy trình để ta ngồi chơi xơi nước.
7 – Playbook
“Chuẩn bị kỹ càng như thế rồi là yên tâm, phải không? Cái gì cần cài cần lắp tui đều làm cả rồi.”
Ấy kìa, đừng vội thế. Nốt cái này đã. Nếu sự cố xảy ra thật, bạn đã biết mình sẽ phải làm gì lúc đó chưa? Nếu như bạn là team 1 người thì tôi không nói, nhưng nếu bạn ở trong một bộ máy cồng kềnh với cả trăm thậm chí cả nghìn người, có lẽ nên có một kịch bản ứng phó sự cố. Đúng vậy! Đấy chính là ý nghĩa của Playbook. (Có ai thấy làm security giống như chơi game không?)
Playbook được xây dựng dựa trên rất nhiều thứ, từ các framework và control rồi các compliance và cả các vấn đề về pháp luật.
Không gì minh hoạ tốt hơn là một bộ phim hay. Để kết lại bài blog đầy tính chém gió kỹ thuật này, xin mời bạn xem series 5 tập “Hacking Google” trên YouTube. Nó mô tả rất sống động công việc của các đội Threat Analysis, Detection & Response, Red Team, Bug Hunters và Project Zero.
Post by @tieucreatesView on Threads