Image result for hacker image

Mình có đọc một bài viết trên forum hackthissite của -Ninjex-, một moderator trên forum nói về con đường để trở thành một hacker. Mình thấy bài viết khá hay nên cũng muốn dịch để các bạn đọc. ^^
10. Học lập trình
Không quan trọng là bạn hack cái gì, bạn phải biết lập trình. Vì sao hacking và lập trình liên quan đến nhau. Những thứ mà bạn đang sử dụng như hệ điều hành, trình duyệt, game,... Đều được làm bởi một lập trình viên nào đó. Lập trình viên thật là tuyệt vời nhỉ? Nhưng hackers với lập trình viên liên quan gì tới nhau? Để trở thành hacker thì bản phải biết được cách mà một thứ nào đó hoạt động, và điều tất yếu. Khi bạn hiểu được cách mà nó được xây dựng, bạn sẽ biết được nó có lỗ hổng như thế nào, điều gì khiến nó có thể xảy ra những kết quả không mong muốn. Trong lập trình,  nhiều thứ thường có một khuôn mẫu là yêu cầu người dùng nhập một thứ gì đó, và rồi làm một hoặc nhiều tùy chọn dựa trên cái người dùng nhập. Thực tế, hầu hết những quyết định trong cuộc sống của bạn cũng theo một cách tương tự như thế. Ví dụ, khi bạn thức dậy, bạn sẽ tự hỏi: "Mình ăn sáng ở nhà hay đi làm rồi ăn?", nếu bạn đang vội, bạn thường sẽ chọn không ăn sáng ở nhà, còn nếu bạn dậy sớm và đủ thời gian thì bạn sẽ làm ngược lại. Một ngoại lệ khác như là hôm đó là chủ nhật, bạn sẽ lựa chọn tùy thuộc vào tâm trạng của bạn đang có, chả sao cả. Do đó trong lập trình, nó cũng tương tự. Bạn có thể tưởng tượng rằng lập trình như là một chiếc xe. Nếu bạn biết cách mà nó hoạt động, bạn có thể sửa chữa thỏa thích và có thể làm nó chạy nhanh hơn. Đó là một ví dụ rất cụ thể về hacking.
Và rồi một câu hỏi nữa bạn sẽ thắc mắc "Tôi nên học ngôn ngữ lập trình nào đầu tiên?". Đó là câu hỏi mà tôi không có câu trả lời. Ngôn ngữ mà bạn chọn tùy thuộc vào cái mà bạn muốn làm. Nếu bạn muốn khai thác lỗ hổng website bạn sẽ không đâm đầu đi học C# mà là PHP/MySQL vànhững ngôn ngữ khác sử dụng để xây dựng trang web. Còn nếu bạn thích về hệ điều hành, thì bạn sẽ nên nên học ASM (theo em không nhầm là assembly) hoặc C chứ không phải là ASP hoặc cái gì đó tương tự. Nếu bạn vẫn chưa quyết định được hãy click here (Có thể mình sẽ dịch bài viết này cho mọi người sau). Nó có thể sẽ giúp bạn chọn được ngôn ngữ cho mình.
Lí do mà hacker tồn tại là bởi vì lập trình viên cần phải nói với máy tính những gì mà nó cần phải làm với bất kì thứ gì mà người dùng nhập vào (đại loại là khi nhập bất kì một thứ gì đấy thì phải có một thứ gì đấy đi ra đấy ạ). Các lập trình viên không thể nào đảm bảo được tất cả đều an toàn và nhiều lí do khác họ không nhận ra được lỗ hổng trong chương trình của họ. Ví dụ, một lập trình viên có một chương trình gửi cho bạn thông tin tài khoản của bạn. Nhưng lập trình viên không để ý rằng bạn có khả năng lấy thông tin không chỉ của bạn mà còn của người khác. Vì vậy hacker được sinh ra.
Bây giờ bạn có thể thấy, không có nhiều sự cân nhắc, xem xét dành cho vấn đề bảo mật (bài này từ 2013 rồi, chứ bây giờ vấn đề này đang rất hot). Chuyện gì sẽ xảy ra nếu người dùng không nhập gì hay là nhập một tài khoản giả mạo? Đó chính là hack. Không phải thường xuyên nhưng đa số là do sự bất cẩn của lập trình viên, bạn có thể tìm ra những cơ hội để có thể đường đường chính chính trở thành một hacker.
11. Kali Linux - The quieter you become, the more you are able to here. (Rebirth?)
May mắn thay, có một hệ điều hành miễn phí được thiết kế để hỗ trợ bạn làm nhưng việc trên. Đó là Kali Linux. Bạn có thể click here để download. Nó bao gồm rất nhiều phần mềm dành cho hacking đã được cài đặt sẵn. Với Kali Linux, bạn sẽ tìm thấy những thứ mình cần cho việc website hacking, reverse engineering, cryptography, social engineering. Tôi khuyến khích bạn nên sử dụng hệ điều hành này. Và tôi có một vài lời khuyên nho nhỏ cho bạn
- Đừng dùng Kali nếu bạn chưa quen dùng Linux, thay vào đó hãy chọn Ubuntu
- Do not run as root! Nếu bạn sử dụng Kali bạn cần phải biết bạn đang làm gì, nhưng nếu bạn chỉ mới đang học hỏi, tìm hiểu thì không nên chút nào. Do đó do not run as root!
giải thích một ít chỗ này: Nói nôm na, root là một cấp quyền cao nhất trong các hệ điều hành Linux. Bạn có thể thay đổi bất cứ thứ gì của hệ điều hành bằng cấp root. Do đó, nếu bạn đang trong quá trình học, bạn phải thử này thử nọ. Nếu không may ảnh hưởng đến hệ điều hành thì rất khó để giải quyết. Do đó ở đây tác giả nói "do not run as root!" ý chỉ chúng ta không nên sử dụng cấp quyền này trong việc học sử dụng Linux.
- Nếu bạn có câu hỏi về những vấn đề của Kali, Tôi đề nghị bạn nên tham khảo forum này. Người mà làm ra sản phẩm, không ai khác sẽ là người mà có nhiều khả năng giúp bạn nhất.
Khi bạn có Kali Linux. Tôi nghĩ là bạn nên tìm hiểu các mà các công cụ hoạt động bằng cách search google. Sau đó thì đăng bài viết lên forum mà tôi vừa giới thiệu.
12. Kiểm tra khả năng của bạn
Hackthissite là một trong những nơi tuyệt vời mà bạn có thể luyện tập khả năng hacking của mình. Như bạn biết, Ở đây ( bài biết này ở trên hackthissite ) là một cộng đồng lớn luôn sẵn sàng giúp đỡ bạn, và chỉ đường dẫn lối cho bạn nếu bạn không biết phải làm thế nào.
b. DVWA - Damn Vulnerable Web App
DVWA là một ứng dụng web PHP/MySQL bạn có thể download, và dễ dàng cài đặt. Hệ thống có rất nhiều lỗ hổng bạn có thể khai thác như SQLi, XSS, XSRF, Bruteforce,.. Và cho phép bạn tùy chọn mức độ khác nhau: low, medium, and high.
Hướng dẫn cài đặt
Nếu bạn có bất kì vấn đề nào mà không có cách giải quyết. Lên IRC và tham gia kênh #coffeesh0p
Cám ơn limdis (tên của một moderator trên hackthissite) đã tạo ra nó.
Tương tự như metasploitable. Đây là một số hay ho đáng để đọc về tạo một pentesting lab (không biết dịch sao cho đúng)
13. Một số điều hữu ích khác
Một số điều mà tôi muốn bạn học là trở thành nặc danh. Đây là bản chất của thế giới ngày này. Nhớ học tốt môn toán và tìm hiểu nhiều về thuật toán. Thêm nữa, nếu ai đó hỏi bạn, "Tôi nên bắt đầu từ đâu?" Hãy nói với họ những thứ mà tôi vừa nói với bạn và cố gắng giúp đỡ. Đó là vấn đề mà chúng ta đang có, rất nhiều sự sáng tạo và sự tưởng tượng bị vùi dập bởi sự ảo tưởng của họ. Hệ thống giáo dục của chúng ta chỉ đang đưa ra và giải quyết một số vấn đề theo sách giáo khoa. (gốc là that teaches one way problems and one way solutions),  và thiếu đi sự chia sẻ về kiến thức. Ai cũng muốn chỉ mình mình biết. Không điều gì có thể phát triển mà không thay đổi. Hãy thay đổi và xem cuộc cách mạng diễn ra. Thật tuyệt vời.
14. Một số môi trường thử nghiệm hacking
Enjoi, and as usual - Stay nerdy!