TÓM LẠI LÀ, HỌC AN TOÀN THÔNG TIN BẮT ĐẦU TỪ ĐÂU?
TLDR;
Thế giới bảo mật máy tính rất (rất) rộng, phức tạp lại còn thay đổi từng ngày.
Tin buồn là không có một bài blog hay một con đường tắt nào sẽ giúp bạn từ newbie trở thành pro hacker đâu, nó sẽ là một quá trình.
Nhưng tin vui là ít nhất có những bài tổng hợp lại tài liệu, để các bạn có thể tham khảo mà không phải đi lan man quá nhiều. Hãy cố gắng trải nghiệm từng bài viết/video một cách chậm rãi, nắm những kiến thức/nguyên lý nền tảng thật chắc.
Kiến thức như một tòa nhà cao tầng, nền tảng là phần móng sẽ quyết định khả năng bạn có thể xây nó lên thật cao không hay liệu có thể đủ sức chinh phục được những kĩ thuật tấn công khó và lắt léo.
Các anh tài hacker cũng đã bắt đầu như thế.
💼 CYBERJUTSU RA MẮT NỀN TẢNG TRA CỨU VIỆC LÀM - TUYỂN DỤNG NGÀNH AN TOÀN THÔNG TIN TẠI VIỆT NAM. Truy cập tại đây: https://jobs.cyberjutsu.io/
Intro
Dạo gần đây tụi mình có nhận được rất nhiều các câu hỏi từ các bạn trẻ đang có ý định theo học ngành An Toàn Thông Tin. Cho nên, bài này được viết ra dành cho các bạn ở ngưỡng cửa entry level, mới bắt đầu, hoặc có ý định tham gia ngành bảo mật.
Mình sẽ không cố gắng đi sâu vào từng ngóc ngách của nó, cộng thêm mỗi nhánh có những cách tiếp cận và phong cách học riêng, bài viết này chỉ là nơi tổng hợp lại những nguồn tài liệu mà CyberJutsu sản xuất và thu thập được (đã review qua chất lượng).
Ngoài bài blog này, các bạn hãy cố gắng tham khảo thêm các tài liệu khác nhau để có cái nhìn sát sao và thực tế hơn với một ngành nghề mới mẻ và đầy thú vị này nhé!
GIAI ĐOẠN 0: BẠN HOÀN TOÀN CHƯA BIẾT AN TOÀN THÔNG TIN / BẢO MẬT MÁY TÍNH CÓ GÌ?
Hãy đọc 2 bài sau trước khi tham gia vào ngành này:
- Làm an toàn thông tin thì học gì? - by thaidn
- BẮT ĐẦU HỌC AN TOÀN THÔNG TIN NHƯ THẾ NÀO? - by l4w
Tập thói quen đọc và nghiền ngẫm 1 cuốn sách hay làm 1 cái lab chỉnh chu vì sau khi hoàn thành nó trọn vẹn, mình đảm bảo là bạn sẽ biết bản thân nên làm gì tiếp theo thôi. Mình đã từng như các bạn, tải hàng trăm cuốn ebooks, videos, nhưng chẳng bao giờ xem hết nó.
Keep calm, learn and practice!
GIAI ĐOẠN 1: Ồ, BẠN ĐÃ BIẾT RẰNG ATTT CÓ RẤT NHIỀU NHÁNH KHÁC NHAU
Đây là giai đoạn mà mình hi vọng rằng bạn đã đảm bảo được những kiến thức cơ bản sau, không nhất thiết phải hiểu tường tận mọi thứ ngay tại thời điểm này (yên tâm đi, bạn còn một khoảng thời gian dài để tiếp tục học nó 😂). Nhưng ít nhất hãy trang bị cho mình một lượng kiến thức nhất định đủ để đọc hiểu và tự lập trình được những thứ căn bản.
Hành trang cơ bản (Starter Pack)
- Lập trình
- Hệ điều hành
- Cấu trúc dữ liệu và giải thuật
- Mạng máy tính
- Mật mã
- Computer Science nói chung
- …
Mình hay học những thứ trên ở trang này: geeksforgeek
Song đó, hãy chọn ra một nhánh mà mình thích và tập trung vào nó. Làm sao để tìm ra nhánh nào mình thích?
Câu trả lời là: Thử, thử hết những thứ đó và tìm xem mình thích cái nào.
Tùy vào nhánh (môn phái) bạn đã quyết định theo hãy chọn những tài liệu tương ứng.
Video 🎬
- Talkshow - Làm hacker là làm gì? (thaidn, PhươngGàCon, HieuPC, l4w)
- Săn lỗi bảo mật - Bug Hunter / Incident Response: CyberJutsu Talk#2 - Suto
- Dịch ngược (Reverse Engineer / Malware Analyst): CyberJutsu Talk#3 - Thug4lif3
- Mật mã (Cryptography): CyberJutsu Talk#5 - thaidn
- Kênh video CyberJutsu TV
Blog 📝
- Các bài viết về bảo mật của nhiều nhà nghiên cứu ở Việt Nam: tradahacking
- Rerverse Engineering: kienmanowar
- Phân tích 1day: testbnull
- Những roadmap của các nhánh: Hack ‘Em All
- Những team kĩ thuật của các tổ chức lớn: VinCSS, Viettel Cyber Security, VNPT, khonggianmang.vn …
- Outline về Digital Forensics: Digital Forensics and Incident Response
- Công việc ở Security operations center: SOC Analyst: The Experience
- Phân biệt Red Team vs Blue Team: RED TEAM VS BLUE TEAM CYBERSECURITY SIMULATION DEFINED
GIAI ĐOẠN 2: THỰC HÀNH
Có nhiều cách thực hành khác nhau, có thể là đi làm va chạm bạn sẽ được tiếp xúc. Tuy nhiên, với các bạn còn đang trong môi trường học thì chúng ta lại có những cách sau đây.
Hướng dẫn sử dụng trước khi dùng nè: cố gắng hiểu về bản chất của từng thứ mình làm, đừng làm theo writeup y chang hay là chạy đua giải cho được nhiều challenge trong khi không nắm được nguyên căn. Làm thế sẽ không giúp bạn trau dồi được gì nhiều, mai mốt nghĩ lại chỉ thấy tốn thời gian thôi.
Capture The Flag (CTF) 🎌
CTF là những cuộc thi mà nơi đó, ban tổ chức sẽ mô phỏng lại những ứng dụng/hệ thống bị lỗi bảo mật từ dễ đến khó để đưa người chơi vào môi trường thực tế, cho người chơi có cơ hội trải nghiệm qua quy trình làm việc của một hacker từ: reconnaissance (trinh sát), footprinting, suy luận, tìm lỗi, khai thác,… Thậm chí những cuộc thi gần đây, các ban tổ chức còn đưa cả những lỗi bảo mật có thật của các ứng dụng nổi tiếng vào nữa!
Các bạn cũng nên thử qua cảm giác khi chiến thắng và giải được một thử thách, rất thú vị đấy.
Tham khảo: CTF for Beginners
Lựa những bài hay hoặc từ các CTFs uy tín, có rating cao ở ctftime, vì bạn không muốn mình sẽ tốn thời gian cho những thử thách không hay / guessing, vì nó sẽ không giúp mình trau dồi kĩ năng.
Đã có rất nhiều bài viết về nó, các bạn có thể search thêm. Riêng video thì mình cũng đã từng làm video: LiveStreamCTF (nhưng nó cũng lâu rồi, sẽ có chút outdated)
Lab / Challenge site 🔬
Ngoài những cuộc thi CTF, bạn cũng có thể tham gia giải đố các thử thách ở những challenges site hay, học hỏi nhiều kĩ thuật được phân loại rõ ràng và không bị áp lực chạy đua trong những lúc thi cử.
Giống như học võ, thì trước khi thi đấu, ta sẽ phải luyện với bao cát trước vậy.
- Web Security: PortSwigger, PentesterLab, RootMe
- Penetration Testing: HackTheBox
- Reverse Engineering: Reversing.kr, crackmes.one
- Software Exploitation: OverTheWire, pwn.college, Pwnable.kr, Pwnable.tw, Exploit.education
- Cryptography: Cryptohack, Cryptopals
GIAI ĐOẠN 3: NỖ LỰC
Sau khi bạn đã đọc và nghe những góc nhìn/kinh nghiệm từ những người đi trước, chọn cho mình vài cuốn sách/lab để làm theo.
Việc còn lại chỉ là khổ luyện! Nên bắt đầu với những thứ dễ và từ từ nâng cao. Đi chậm, nắm thật chắc căn bản trước khi bước lên level tiếp theo.
Luyện
- Luyện đề CTF/challenges, viết lời giải cho nó, tham gia các nhóm trong trường (nếu có). Vì CTF cũng là một cách để update kiến thức cũng như đọc writeup của những người khác học hỏi cách suy nghĩ và giải quyết vấn đề. Có đầy đủ mảng trong CTF nhé.
- Luyện đọc code nếu bạn muốn tìm lỗi trong các mã nguồn.
- Luyện fuzzing trên binary nếu bạn muốn tìm lỗi bảo mật tự động trên các ứng dụng phần mềm.
- Luyện dịch ngược, unpack, deobfuscate… nếu bạn muốn trở thành một chuyên gia làm lĩnh vực mã độc.
- Luyện sách, paper, thuật toán, lập trình nếu bạn muốn giỏi ở mảng Mật mã.
- Luyện lập trình, bổ sung góc nhìn security, thành thạo tool và các loại tấn công ở mức nhất định nếu bạn muốn tham gia Blue Team.
- Luyện đi thi chứng chỉ (uy tín và chất lượng) nếu bạn muốn thỏa một số điều kiện của nhà tuyển dụng, cũng như là một cách chứng minh năng lực. Nhưng cũng không nên quá “lậm” vào nó.
- Luyện ngoại ngữ để có thể tham khảo những bài viết của những chuyên gia nước ngoài.
Cơm thêm
- Viết blog nâng cao khả năng diễn đạt, cũng như chứng minh năng lực với cộng đồng.
- Tham gia twitter, follow những nhà nghiên cứu nổi tiếng khác.
- Trau dồi khả năng tự học.
- Tìm cho mình một đàn anh, mentor nào đó (chủ động lên, đừng ngại)
- Tìm bạn, nhóm đồng hành vì trong quá trình học dễ nản lắm nhé.
- …
Bonus
- Working at Project Zero (Một bài blog của nhóm hacker siêu sao Project Zero của Google, họ trả lời những câu hỏi về việc học và tiêu chí tuyển dụng của nhóm)
- So you want to work in security (but are too lazy to read Parisa’s excellent essay)
- KINH NGHIỆM KHI TÌM LỖI BẢO MẬT
Lời kết
Một lần nữa mình muốn chia sẻ rằng: ngành này còn rất mới và rộng, đổi lại nó rất thú vị và cho bạn một thu nhập tốt.
Cũng như không có một tài liệu, bài viết nào có thể bao hàm hết tất cả thứ bạn đang tìm, mà mỗi người học nó cần chủ động đi từng bước nhỏ, và có tinh thần tự học cao để có thể tiếp tục nhận ra mình cần gì và vạch ra hướng đi tiếp theo cho bản thân.
Nếu các bạn muốn biết thêm về bất kì chủ đề nào hay muốn nghe giải thích nó bởi chính CyberJutsu thì hãy để lại comment trên bài post facebook để tụi mình có thể biết chủ đề nào lên làm tiếp theo nhé.
Trong khi đó CyberJutsu đang cố gắng làm ra nhiều nội dung sinh động hơn về bảo mật máy tính ;)
Nếu bạn muốn support tụi mình? Hãy subscribe Kênh Video CyberJutsu TV và like fanpage CyberJutsu để giúp nhóm có thêm động lực.
Chúc các bạn may mắn trên con đường mình chọn!