Học ngành an toàn thông tin mạng là học những môn gì?

học ngành an toàn thông tin mạng là học những môn gì? vị trí làm việc sau khi học 

rfgrfgfdg
rfgrfgfdg
Trả lời 12 năm trước

Có ba món quan trọng cần phải học: lập trình, lập trình và lập trình! Để làm việc được trong ngành này, bạn phải yêu thích lập trình. Không có cách nào khác. Thề luôn!

Tôi dành khá nhiều thời gian tìm hiểu giáo trình khoa học máy tính của các trường đại học lớn trên thế giới và tôi thấy tất cả các môn học đều có phần bài tập là lập trình. Học cái gì viết phần mềm cho cái đó. Học về hệ điều hành thì phần bài tập là viết một hệ điều hành. Học về mạng thì viết phần mềm giả lập router, switch hay firewall. Cá nhân tôi cũng thấy rằng lập trình là cách tốt nhất để tiếp thu kiến thức một môn học nào đó, biến nó thành của mình. Nói cách khác, lập trình là một cáchmã hóa tri thứckhá hiệu quả.

Ngoài ra nhìn vào mô tả công việc ở phần 2, bạn cũng có thể thấy kỹ năng lập trình quan trọng đến dường nào, bởi hầu hết các vấn đề và giải pháp của an toàn thông tin là đến từ phần mềm. Rõ ràng muốn tìm lỗi của phần mềm thì bạn phải hiểu được phần mềm thông qua mã nguồn trực tiếp hay trung gian của nó. Rất có thể bạn sẽ không phải lập trình hàng ngày, nhưng bạn phải viết được những công cụ nhỏ hay những thư viện hỗ trợ cho công việc và các lập trình viên khác.

Vậy làm thế nào để lập trình giỏi? Câu hỏi này làm tôi nhớ đến câu chuyện cười về ông lập trình viên không thể ra khỏi phòng tắm vì trên chai dầu gội có ghi hướng dẫn sử dụng là “cho vào tay, xoa lên đầu, xả nước và lập lại”. Từ khóa trong câu chuyện này là “lập lại”: muốn giỏi lập trình thì cách tốt nhất là lập trình nhiều vô!

Nhưng mà lập trình bằng ngôn ngữ gì bây giờ? Đây là câu hỏi dễ làm cho các lập trình viên oánh nhau nhất;-). Cá nhân tôi thấy rằng người làm an toàn thông tin bây giờ cần phải thông thạo C, x86 Assembly, Python (hoặc Ruby) và JavaScript. Tôi có nói lý do tại sao trong phần giới thiệu sách tiếp theo.

Lập trình

  • Brian Kernighan, Dennis Ritchie,The C Programming Language (2nd Edition): kinh điển và phải-đọc cho tất cả những ai muốn học C! Linus Torvalds từng nói rằng “[...]all right-thinking people know that(a) K&R are _right_ and (b) K&R are right“. Tôi đã từng rất sợ C (vì nghĩ nó phức tạp), và cuốn này giúp tôi không còn sợ nữa.
  • Randal Bryant, David O’Hallaron,Computer Systems: A Programmer’s Perspective: cuốn này được dùng cho lớpCS107. Đọc cuốn này và làm bài tập của lớp CS107 sẽ rèn cho bạn kỹ năng lập trình C và x86 Assembly. Sau khi đọc cuốn này, bạn sẽ biết tại sao có lỗi tràn bộ đệm và cách khai thác chúng. Tôi rất thích các chương nói về x86 và sự liên kết giữa các công cụ như preprocessor, compiler và linker.
  • David Hanson,C Interfaces and Implementations: muốn mau “lên cơ” bida thì phải thường xuyên xem người khác chơi để mà học “đường” mới. Tương tự, muốn giỏi lập trình thì phải thường xuyên đọc mã của những cao thủ. David Hanson là một cao thủ C và cuốn sách này sẽ chỉ cho bạn nhiều “đường” mới trong việc sử dụng C. Tôi thích các bài tập của cuốn sách này. Tôi nghĩ chỉ cần luyện các bài này là đủ để trở thành một lập trình viên C hạng lông.
  • Justin Seitz,Gray Hat Python: Python Programming for Hackers and Reverse Engineers: cuốn này sẽ giúp bạn sử dụng Python để viết những công cụ nho nhỏ mà bất kỳ ai làm an toàn thông tin cũng sẽ phải viết một vài lần trong đời.
  • Douglas Crockford,JavaScript: The Good Parts: JavaScript là ngôn ngữ thống trị WWW. Nếu bạn muốn làm an toàn (ứng dụng và trình duyệt) web thì bắt buộc phải thành thạo ngôn ngữ. Cuốn sách rất mỏng này của tác giả JSON giới thiệu đầy đủ những vấn đề mà người làm an toàn ứng dụng cần phải biết về JavaScript. Cuốn này có thể dùng làm sách giáo khoa thay cho cuốn “Javascript: The Definitive Guide” trong lớpCS142(xem bên dưới). Đọc cuốn này tôi mới hiểu closure là gì và bản chất prototypal của JavaScript.
  • Sẽ đọc: những cuốn được giới thiệu ởđây.

Hệ điều hành

  • Abraham Silberschatz, Peter Galvin, and Greg Gagne,Operating System Concepts, 8th Edition Update: cuốn này là giáo trình của lớpCS140. Tôi nghĩ không cần đọc cuốn này, chỉ cần đọc notes và làm bài tập (viết các phần khác nhau của một hệ điều hành!) là đủ. Đây là một lớp nặng. Tôi theo đuổi lớp CS140 này giữa chừng thì phải dừng lại do không có đủ thời gian.
  • Intel Software Developer Manuals: tôi thấy nên đọc tài liệu của80386trước, rồi sau đó hẵng đọc tài liệu của cácCPU mới hơn.
  • Red Hat,Introduction to System Administration: tôi rất thích chương nói về “philosophy of sysadmin” của cuốn này và tôi nghĩ kỹ năng quản trị hệ thống là cực kỳ cần thiết khi muốn nghiên cứu các kỹ thuật tấn công/phòng thủ mới. Không thể làm an toàn vận hành nếu không có kỹ năng quản trị hệ thống.
  • Sẽ đọc:Mark Russinovich, David Solomon, Alex Ionescu,Windows Internals, Part 1: Covering Windows Server 2008 R2 and Windows 7.

Mạng máy tính

  • Richard Stevens,TCP/IP Illustrated Vol I: cuốn sách này quá nổi tiếng rồi nên tôi nghĩ không cần phải giới thiệu. Tôi chưa đọc Vol II, III nhưng nhất định sẽ tìm đọc trong thời gian tới.LớpCS144dùng một cuốn sách khác. Tôi chưa học lớp này, nhưng tôi thấy bài tập của họ khá thú vị.
  • Stephen Northcutt, Lenny Zeltser, Scott Winters, Karen Kent, Ronald W. Ritchey,Inside Network Perimeter Security, 2nd Edition: tôi thích cuốn này vì nó viết rất dễ hiểu về các vấn đề và công cụ thường gặp trong an toàn mạng.
  • Sẽ đọc: Fyodor,Nmap Network Scanning.

Sau khi đã có những kiến thức cơ bản ở trên, bạn có thể theo đuổi lớpCS155. Lớp này có trên Coursera với tênComputer Security. Song song với lớp CS155, bạn có thể tìm đọc các sách sau:

Tìm lỗi phầm mềm

  • Mark Dowd, John McDonald, Justin Schuh,The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities: Kinh điển và phải-đọc! Cuốn này là kinh thánh của lĩnh vực an ninh ứng dụng. Tôi thích nhất phần nói về tràn số nguyên và những vấn đề của ngôn ngữ C trong cuốn này.
  • Dafydd Stuttard, Marcus Pinto,The Web Application Hacker’s Handbook: Discovering and Exploiting Security Flaws: cuốn này tập trung vào ứng dụng web. Tôi không đọc cuốn này kỹ lắm, mà chỉ thường dùng nó để tham khảo. Dẫu vậy tôi nghĩ nó là một cuốn giới thiệu tốt cho những ai mới bắt đầu.
  • Michal Zalewski,The Tangled Web: cuốn này mới xuất bản gần đây nhưng đã ngay lập tức trở thành kinh điển! Cuốn này đúc kết quá trình nghiên cứu về an ninh web trong vài năm trời của một trong những hacker xuất sắc nhất thế giới. Tôi nghĩ chỉ cần đọc cuốn này là bạn đã có thể bắt đầu tìm lỗ kiếm tiền được rồi. Cuốn này và cuốn ở trên được dùng làm sách giáo khoa của lớpCS142.
  • Sẽ đọc: Tobias Klein,A Bug Hunter’s Diary: A Guided Tour Through the Wilds of Software Security

Dịch ngược mã phần mềm

  • Eldad Eilam,Reversing: Secrets of Reverse Engineering: mặc dù có rất nhiều người viết về RCE nhưng tôi thấy đây là cuốn duy nhất hệ thống hóa được các bước quan trọng cần phải làm khi cần dịch ngược mã của một tệp chương trình nào đó.
  • Chris Eagle,The IDA Pro Book: The Unofficial Guide to the World’s Most Popular Disassembler: IDA Pro là công cụ tốt nhất để làm RCE và đây là cuốn sách tốt nhất về IDA Pro. Nắm vững C và x86 Assembly thì chỉ cần đọc cuốn này là bạn có thể bắt đầu RCE các phần mềm phức tạp.
  • Tham khảo các tài liệu vềdịch ngược mã phần mềmcủa lớp PenTest của đại học NYU.
  • Sẽ đọc:Christian Collberg,Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection: Obfuscation, Watermarking, and Tamperproofing for Software Protection
  • Sẽ đọc:Michael Sikorski, Andrew Honig,Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software

Điều tra số (digital forensics)

  • Brian Carrier,File System Forensic Analysis: Brian Carrier là tác giả của bộ công cụ forensic nổi tiếngThe Sleuth Kit. Cuốn này đã giúp tôi “khai quật” được một đoạn video bị xóa lưu trong một máy camera quay lén các máy ATM.
  • Sẽ đọc:Cory Altheide, Harlan Carvey,Digital Forensics with Open Source Tools

Mật mã hóa

  • Niels Ferguson, Bruce Schneier,Practical Cryptography: tôi có nhiều kỷ niệm đẹp với cuốn này;-). Hầu hết các kết quả làm việc của tôi trong vài năm vừa rồi là nhờ vào việc đọc cuốn này. Tôi chép lại đây giới thiệu rất hay của một người bạn: “The best security books, you can read “inside out”, taking any recommendation on what to do and looking for people to do the opposite to find flaws. “Firewalls and Internet Security” was like that. So was “Practical Unix Security”, and so is TOASSA. This is that book for crypto. It’s also the one book on crypto you should allow yourself to read until you start actually finding crypto flaws.
  • Jonathan Katz, Yehuda Lindell,Introduction to Modern Cryptography: Principles and Protocols: đây là sách giáo khoa của lớpCS255. Lớp này là lớpCryptographytrên Coursera.
  • Sẽ đọc: Adam Young, Moti Yung,Malicious Cryptography: Exposing Cryptovirology

Chú ý đây là những cuốn sách tập trung vào công việc hàng ngày và sở thích của tôi — nói cách khác, còn thiếu nhiều sách của các mảng công việc khác. Dẫu vậy tôi nghĩ những cuốn sách này sẽ giúp bạn có được một kiến thức nền tảng vững chắc để từ đó theo đuổi các nghề nghiệp khác nhau trong ngành an toàn thông tin. Trong thời gian tới tôi sẽ cập nhật thêm những cuốn sách mà tôi đang và sẽ đọc. Nếu bạn biết sách nào hay thì hãy giới thiệu cho tôi.

Ngoài ra trong các sách mà tôi vừa liệt kê không có cuốn sách toán (và lý thuyết khoa học máy tính) nào cả. Tôi nghĩ bạn sẽ tự có câu trả lời cho câu hỏi “Có nên học toán hay không?” khi bắt đầu học mật mã. Về hai mảng này thì tôi rất thích lớp “Great Ideas in Theoretical Computer Science” củaScott Aaronsonvà cuốn “A Computational Introduction to Number Theory and Algebra” của Victor Shoup. Thích đến nỗi tôi phải viết đoạn này chỉ để nhắc đến chúng;-). Tôi cũng đã từng dành ra nhiều tháng để đánh vật vớiIntroduction to the Theory of Computationcủa Michael Sipser. Nhưng thôi, tôi không muốn giới thiệu sách toán nữa vì tôi rất dốt món này!

rfgrfgfdg
rfgrfgfdg
Trả lời 12 năm trước

Đúng thời điểm các “sĩ tử” nộp hồ sơ đăng ký dự thi Đại học, Cao đẳng năm 2012, hôm nay, 15/3, Học viện Công nghệ Bưu chính Viễn thông đã công bố chuyên ngành học mới An toàn thông tin mạng.

Đây là chuyên ngành đào tạo được xây dựng từ thực tế hiện nay về nhu cầu nguồn nhân lực an toàn thông tin của Việt Nam. Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam VNCERT - Bộ Thông tin và Truyền thông phối hợp với Học viện Công nghệ Bưu chính Viễn thông mở chuyên ngành đào tạo kỹ sư An toàn thông tin bắt đầu từ năm 2012.

Chương trình đào tạo được thiết kế rất thực tế, các môn học mang tính cập nhật, đào tạo kỹ năng phân tích, kiểm soát rủi ro trên cả cơ sở công nghệ và quản lý.

Sinh viên theo học ngành CNTT chọn chuyên ngành An toàn thông tin mạng sẽ được trang bị các kiến thức và kỹ năng cơ bản về CNTT như kỹ thuật lập trình, công nghệ mạng, kiến trúc máy tính và hệ điều hành, cơ sở dữ liệu, truyền dữ liệu và mạng máy tính, công nghệ phần mềm…

Các kiến thức và các kỹ năng chuyên sâu về an toàn mạng sẽ được trang bị như: kỹ thuật mật mã, an toàn mạng máy tính, an toàn hệ điều hành, an toàn cơ sở dữ liệu, an toàn các ứng dụng web và Internet, an toàn trong giao dịch và thương mại điện tử, các kỹ thuật tấn công và xâm nhập mạng…

Trong quá trình học, sinh viên sẽ được trang bị cả kiến thức và các kỹ năng xử lý tình huống thực tế thông qua các bài thực hành, các hình thức diễn tập thực tế; Trang bị các kỹ năng mềm để làm việc khoa học, chuyên nghiệp, tư duy hệ thống, khả năng trình bày, khả năng giao tiếp và làm việc hiệu quả trong nhóm.

Về trình độ ngoại ngữ, sau khi tốt nghiệp, sinh viên sẽ được đào tạo để đạt trình độ tiếng Anh 450 điểm TOEIC, có khả năng sử dụng tiếng Anh tốt trong các hoạt động liên quan đến nghề nghiệp được đào tạo.

Kỹ sư tốt nghiệp ra trường sẽ có khả năng làm việc trong các đơn vị chuyên ngành về CNTT và mạng cũng như các cơ quan, tổ chức, doanh nghiệp ứng dụng CNTT như các cơ quan chính phủ, các cơ quan thuộc lĩnh vực tài chính, ngân hàng, bảo hiểm, viễn thông, năng lượng điện, dầu khí… với các vị trí công việc:

Chuyên viên quản trị bảo mật máy chủ và mạng; Chuyên viên bảo mật cơ sở dữ liệu; Chuyên viên phân tích, tư vấn, thiết kế hệ thống thông tin đảm bảo an toàn; Chuyên viên kiểm tra, đánh giá an toàn thông tin cho mạng và hệ thống; Chuyên viên ra quét lỗ hổng, điểm yếu và xử lý sự cố an toàn thông tin và Chuyên gia lập trình và phát triển ứng dụng đảm bảo an toàn thông tin.

Được biết, Học viện Công nghệ Bưu chính Viễn thông là đơn vị nghiên cứu, đào tạo đa ngành, đa lĩnh vực có uy tín. Đây cũng là trung tâm nghiên cứu khoa học và kỹ thuật hiện đại về CNTT và truyền thông. Với điểm khác biệt là thành viên của Tập đoàn Bưu chính Viễn thông Việt Nam, chương trình đào tạo của Học viện vừa kết hợp với kiến thức hàn lâm, vừa có nội dung thực tập, thí nghiệm, thực hành bám sát sự phát triển của mạng lưới viễn thông, CNTT - truyền thông của VNPT.

Học viện cũng là đơn vị đào tạo đi đầu trong việc mở các ngành, chuyên ngành đạo tạo mới. Năm 2011 vừa qua, Học viện đã mở ngành Công nghệ đa phương tiện. Đây là cơ sở đào tạo ngành học này đầu tiên tại Việt Nam. Năm 2012, Học viện sẽ tuyển 200 chỉ tiêu cho ngành học này.