Bạn Hỏi: Sử Dụng Máy ảo Hay Máy Vật Lý Kali, Phỏng Vấn Pentest Sẽ ...

Chào mừng bạn đã đến với chuyên mục trả lời câu hỏi học cybersecurity bài số 4. Hôm nay chúng ta sẽ trả lời 4 câu hỏi nhé.

Câu hỏi 1: Kali máy ảo hay máy vật lý

Bạn tmn1003 hỏi:Em muốn theo hướng pentest thì theo anh nên sử dụng luôn linux hay là giả lập linux trên vmware ạ. Em cảm ơn anh nhiều.

Trả lời:

Việc lựa chọn nên sử dụng máy ảo Kali Linux hay dùng máy vật lý (dual boot hoặc sử dụng luôn Kali Linux làm hệ điều hành chính) tùy thuộc vào nhu cầu hiện tại của bạn cũng như sức mạnh phần cứng của máy bạn.

Bạn chỉ nên dùng máy ảo nếu máy của bạn đủ mạnh, theo mình lí tưởng nhất là:

  • Chip Intel Core I7 từ thế hệ 6 trở lên và có ít nhất 4 nhân
  • RAM tầm 16 GB
  • Bộ nhớ lưu trữ còn dư tối thiểu 200 GB

Cấu hình trên sẽ đảm bảo máy vật lý của bạn vừa có thể chạy mượt mà máy ảo Kali Linux với cấu hình:

  • 1 nhân CPU
  • 8 GB RAM
  • 100 GB lưu trữ

Và vừa có thể duyệt web để xem hoặc đọc video hướng dẫn làm lab.

Tuyệt đối tránh tình trạng máy bạn chỉ có CPU 2 nhân, 8GB RAM bạn lại dành tất cả tài nguyên đó để chạy máy ảo. Vì để chạy được máy ảo, máy chủ phải chia sẻ tài nguyên của mình (bao gồm CPU, RAM, bộ nhớ, v.v.) với máy ảo đồng thời vẫn phải có đủ tài nguyên để chạy các tác vụ của máy chủ bao gồm cả tác vụ chạy phần mềm quản lý máy ảo (ví dụ VMware). Nếu bạn dành toàn bộ tài nguyên cho máy ảo, máy chủ sẽ không có đủ tài nguyên để chạy các tác vụ của nó và hậu quả là máy bạn sẽ bị đứng, không thể thao tác được và buộc phải khởi động lại.

Lẽ dĩ nhiên vì Linux vốn dĩ gọn nhẹ, bạn hoàn toàn có thể chỉ cần chia sẻ với máy ảo 4GB RAM thay vì 8GB và tầm 20GB bộ nhớ thay vì 100GB. Nó vẫn sẽ cho bạn một trải nghiệm Kali Linux tương đối tốt, mặc dù đôi lúc bạn sẽ thấy nó hơi đứng nhẹ khi bạn làm các lab buộc bạn phải thực hiện đa tác vụ. 20GB bộ nhớ sẽ cho bạn tầm 16GB bộ nhớ thực dùng, và số lượng bộ nhớ này có thể sẽ được dùng hết rất nhanh; thao tác mở rộng bộ nhớ ảo trên VMware cũng có thể làm hư hại hoàn toàn máy ảo bạn đang sử dụng.

Ngoài ra còn một vấn đề cần lưu ý nữa đó là khi bạn crack mật khẩu bằng brute force attack hay dictionary attack bạn sẽ không thể sử dụng ứng dụng Hashcat để crack được. Lí do là vì Hashcat cần GPU (card đồ họa) để chạy ứng dụng crack và máy ảo thì không thể dùng GPU của máy vật lý được. Bạn vẫn có thể chạy những ứng dụng có tùy chọn sử dụng CPU thay vì GPU để crack password, nhưng vì CPU không được thiết kế để xử lý những phép toán phức tạp như GPU nên thời gian crack sẽ lâu hơn khá nhiều.

Đổi lại những bất lợi trên bạn sẽ có được sự tiện dụng khi có thể sử dụng cùng lúc hai hay nhiều hệ điều hành cùng một lúc. Không cần phải save toàn bộ tác vụ lại rồi restart máy để chuyển đổi giữa hai hệ điều hành như dual boot. Nếu như hiện tại bạn không dùng Kali Linux quá nhiều và chủ yếu là để làm lab thì máy ảo là một giải pháp bạn nên cân nhắc.

Có vài bạn cũng muốn thử Linux subsystem trên Windows 10. Thật ra Linux subsystem cũng chỉ là một dạng máy ảo sử dụng nền tảng ảo hóa Hyper-v của Microsoft tương tự như VirtualBox hay VMware thôi. Nghĩa là bạn sẽ vẫn gặp phải những vấn đề mà mình đã đề cập phía trên.

Với máy chủ vật lý sử dụng dual boot (2 hệ điều hành song song có thể là Windows và Kali Linux), nó cũng đòi hỏi bạn phải có một vài kỹ năng nhất định như:

  • Cách chia ổ cứng trên Windows mà vẫn đảm bảo vẫn còn chỗ cho Windows lưu giữ dữ liệu mới
  • Cách vào BIOS
  • Cách tạo USB boot và cách chạy USB boot để cài đặt Kali Linux trên máy chủ vật lý

Bạn cũng sẽ gặp một vài phiền toái như mỗi lần đổi hệ điều hành thì phải save tác vụ đang dở dang lại. Bạn cũng sẽ cần một ổ cứng rời hay một ổ lưu trữ trên mây (Drive, One Drive, DropBox, v.v.) để lưu giữ những tài liệu quan trọng và tập thói quen lưu giữ những tài liệu quan trọng lên mây hay ổ cứng rời để hạn chế việc bạn phải đổi hệ điều hành qua lại liên tục vì bên Kali không có tài liệu mà bạn cần đang được lưu bên Windows và ngược lại.

Ổ cứng rời

Đổi lại, bạn sẽ có một hệ điều hành Kali Linux được trang bị đầy đủ sức mạnh phần cứng của máy bạn (ngoại trừ ổ cứng phải chia sẻ với Windows). Nếu bạn sử dụng Kali Linux rất nhiều và chủ yếu cho công việc pentest hoặc làm lab, đây sẽ là giải pháp tối ưu nhất cho bạn.

Đến đây sẽ có bạn đặt câu hỏi vậy bạn dùng Kali Linux làm hệ điều hành chính luôn được không? Mình sẽ trả lời là không.

Nguyên do là vì Kali Linux chứa bên trong nó những ứng dụng và mã độc phục vụ cho công việc khai thác lỗi, nên nếu sử dụng Kali Linux cho các tác vụ thường ngày như duyệt web, check mail, online banking v.v. khả năng bạn bị các hacker lợi dụng những ứng dụng trên máy của bạn để tấn công ngược lại bạn khá cao.

Kali Linux có một hệ thống tường lửa, nhưng cũng được thiết kế khá linh hoạt phục vụ cho việc pentest, chưa kể bạn không thể cài phần mềm diệt virus (AV) lên Kali Linux nếu không muốn AV xóa sạch mọi mã độc cũng như ứng dụng tấn công đang được cài trên Kali Linux.

Vì những lí do trên mình khuyên các bạn chỉ nên dùng Kali Linux cho mục đích pentest mà thôi.

Câu hỏi 2: Khi phỏng vấn pentest sẽ được hỏi gì?

Bạn Na có hỏi:Chào a. Anh ơi cho e hỏi , khi tuyển dụng pentester , nhà tuyển dụng sẽ hỏi những kiến thức và kĩ năng gì ạ ? Rất mong anh trả lời câu hỏi của e , cảm ơn a ạ .

Trả lời:

Để trả lời một cách chi tiết câu hỏi này thì rất khó vì nó phụ thuộc nhiều vào công nghệ và yêu cầu đầu vào của mỗi công ty. Có công ty yêu cầu ứng viên phải có kinh nghiệm viết ứng dụng C# hoặc Java thì họ sẽ hỏi về C# hoặc Java, có công ty yêu cầu kiến thức về reversing engineering thì họ sẽ hỏi về chủ đề này v.v.

Nhưng theo kinh nghiệm đi xin việc của bản thân mình sẽ có những câu hỏi sau đây:

  1. Tại sao lại chọn pentest và bạn biết gì về pentest?
  2. Bạn học pentest như thế nào?
  3. Dự tính trong 5 năm tới bạn sẽ làm gì để phát triển sự nghiệm của mình và sẽ mang lại lợi ích gì cho công ty?
  4. Bình thường bạn pentest những nền tảng nào (web, smartphone, v.v)? Bạn có thể kể sơ lược lại quá trình bạn đã làm được không?
  5. Trình bày một lỗi bảo mật hay gặp ví dụ SQL injection hoặc LFI và cách khai thác?
  6. Những kỹ năng nào bạn thấy mình chưa ổn? Và bạn làm gì để khắc phục nó?
  7. Kể về một project mà bạn đã từng làm? Kết quả ra sao?
  8. Bạn biết gì về lỗi bảo mật mới được tìm ra gần đây?
  9. Bạn đối mặt với stress như thế nào?
  10. Bạn tự đánh giá khả năng viết báo cáo gửi khách hàng của bạn ở mức nào theo thang điểm 10?

Lời khuyên của mình là bạn nên trả lời thành thật, nếu không biết thì mình có thể trả lời “Vấn đề này tôi chắc lắm, nhưng theo tôi thì nó sẽ như thế này ………………. Nếu có gì sai xót tôi xin lỗi và sẽ tìm hiểu sau khi buổi phỏng vấn kết thúc:”

Làm cybersecurity quan trọng nhất là bạn phải thành thật vì đây là một ngành khá nhạy cảm và hoàn toàn phụ thuộc chủ yếu vào niềm tin với một cá nhân nào đó. Bạn cũng sẽ không có cửa nói dối vì khả năng cao sẽ bị phát hiện ra ngay do những người tham gia phỏng vấn là những chuyên gia cybersecurity có kỹ năng social engineering không phải ở dạng vừa cho phép họ có thể nhìn ra những điểm không tự nhiên trong ngôn ngữ cơ thể của bạn khi bạn đang nói dối.

Ví dụ như gần đây mình phỏng vấn cho một công ty chuyên về bảo mật (xin được giấu tên). Trong 4 người phỏng vấn mình có 1 giám đốc nhân sự, 1 giám đốc blue team SOC, 1 giám đốc red team pentest và 1 giám đốc threats intelligent. Mỗi khi 1 người hỏi, 3 người còn lại sẽ tập trung quan sát thái độ, hành vi, cử chỉ của mình, đồng thời sẽ ghi chú lại. Nên mình nghĩ muốn nói dối cũng khó. Đây cũng là 1 bài test để xem khả năng chịu áp lực của bạn đến đâu.

Câu hỏi 3: Nên bắt đầu học từ đâu với 3 lĩnh vực đã chọn

Bạn JoeT hỏi:Em có đọc qua 2 bài “làm/học an toàn thông tin thì cần những gì?”, em có đọc qua các lĩnh vực của InfoSec, nói chung em xác định 3 lĩnh vực mình thích (thứ tự ưu tiên từ trên xuống):1 – Penetration testing2 – Forensics3 – Malware analysicsa) Với 3 lĩnh vực này thì em nên bắt đầu học từ đâu ngoài học Lập trình, hệ điều hành, mạng?b) 3 cuốn sách CompTIA Security+, Network+ và Linux+ có phù hợp để bắt đầu?Em xin cám ơn admin

Trả lời:

Cá nhân mình nghĩ, việc đầu tiên bạn cần làm đó là trong 3 mảng mà bạn đã chọn, bạn hãy chỉ chọn ra 1 mảng để tập trung ở giai đoạn khởi đầu và cố gắng đi chuyên sâu vào mảng đó. Đừng cố gắng ôm đồm cả 3 vì đây là 3 mảng với công việc hoàn toàn khác nhau. Khối lượng kiến thức để thuần thục của mỗi mảng riêng biệt cũng là đã quá nhiều rồi. Có thể khi trở thành chuyên gia, bạn có thể học hỏi thêm về 2 mảng còn lại nhưng ở giai đoạn bắt đầu thì mình khuyên bạn không nên.

Về kiến thức, thì cả 3 mảng này đều có những điểm chung đó là bạn phải biết về:

  • Lập trình (C, Python, HTML, Javascript, PHP, … ngoài ra Pentest và Malware Analysis còn phải biết cả Assembly)
  • Hệ thống máy (Linux server, Windows Server, Smart devices, IoT, v.v.)
  • Hệ điều hành (Các Linux distributions, Windows, FreeBSD, MacOS Android, IoS, v.v)
  • Kiến thức chuyên sâu về hệ thống mạng và các công cụ mạng như Wireshark, IDS/IPS, Log systems, v.v.
  • Kiến thức về ảo hóa

Sau khi đã xác định được mảng cần đi rồi, bạn sẽ có thể xác định tiếp những kiến thức nền cần có của mảng đó và hãy tập trung học ít mà chắc hơn là ôm đồm nhiều thứ cuối cùng không đâu ra đâu. Và mình nói thật, chỉ riêng 5 điểm kiến thức mình kể bên trên thôi, để chuyên sâu đến mức đủ để đi làm thì cũng tốn thời gian tính bằng năm.

Cách tốt nhất đó là sau khi bạn đã xác định mảng cần đi rồi, hãy tìm một cuốn sách về mảng đó dành cho người mới bắt đầu sau đó bạn đọc đến đâu thì tìm hiểu thêm các kiến thức liên quan mà mình chưa biết đến đó.

Về 3 giáo trình Security+, Network+ và Linux+ thì mình thấy Security+ thiên về mảng quản lý trong khi cả 3 mảng bạn đang theo chủ yếu theo hướng thực hành, nên mình không nghĩ nó sẽ giúp ít quá nhiều cho bạn, đương nhiên bạn vẫn có thể tham khảo thêm nếu muốn. Riêng 2 giáo trình Network+ và Linux+ khá ổn cho người mới bắt đầu nhé.

Câu hỏi 4: Lộ trình học Incident Response

Bạn Phan Tuấn Tú hỏi:Em làm network, em đang muốn theo Incident Responder Security. Thì để theo được hướng Incident Responder này thì cần học theo lộ trình nào và với những hệ thống như SIEM thì làm sao mình có thể làm lab để có thể làm quen được. Em cảm ơn ạ.

Trả lời:

Chào bạn, với Incident Response, bạn có thể đi theo lộ trình học chứng chỉ CySA+ sau đó học lên chứng chỉ GCIH. Một lựa chọn khác là sau khi học xong CySA+, bạn có thể học thêm 1 khóa về phần mềm SIEM QRadar của IBM để đạt được chứng chỉ IBM Certified SOC Analyst của IBM.

Về việc làm lab với SIEM, mình thú thật là những hệ thống SIEM nổi tiếng được nhiều doanh nghiệp sử dụng như Splunk, QRadar, McAfee SIEM, v.v. dù cho có bản trial đi nữa, thì tính năng của nó cũng rất giới hạn nên khó có thể cho bạn thực hành thuần thục được. Có một SIEM mà mình biết đó là SolarWind SIEM, không được nổi tiếng lắm, cho phép bạn thử full tính năng trong 30 ngày, có thể phần nào giúp được bạn.

Một lựa chọn khác là bạn có thể dựa vào các nền tảng open-source SIEM, đương nhiên tính năng sẽ kém xa bản thương mại, nhưng vẫn có thể thực hành xây dựng, thiết lập hệ thống bảo vệ.

Mình cũng tìm được một khóa học ngắn hạn miễn phí của Elastic SIEM. Nếu bạn có hứng thú thì có thể click vào đây.

Xin cám ơn câu hỏi của các bạn và chúc các bạn học tốt,

Vincent Nguyễn

Share this:

  • Tweet
Like Loading...

Related

Từ khóa » Có Nên Dùng Kali Linux