Module 5
SYSTEM HACKING
Các Chủ Đề Chính Trong Chương Này
Bẻ Khóa Mật Khẩu
Leo Thang Đặc Quyền
Thực Thi Chương Trình
Che Dấu Tập Tin
Xóa Dấu Vết
Trong chương này chúng ta sẽ thảo luận về chủ đề System Hacking bao gồm các thao tác tấn công vào hệ thống. Như đã trình bày trong phần Scanning và Enumeration tiến trình System Hacking sẽ gồm sáu bước , đầu tiên là Enumration và các bước còn lại là :
- Bẻ Khóa Mật Khẩu
- Leo Thang Đặc Quyền
- Thực Thi Chương Trình
- Che Dấu Tập Tin
- Xóa Dấu Vết
Phần 1 – Bẻ Khóa Mật Khẩu
Rất nhiều tình huống tấn công hệ thống bắt đầu với việc phá mật khẩu vì đây là một trong những thông tin quan trọng nhất để truy cập vào hệ thống. Có nhiều dạng mật khẩu khác nhau nhưng thông thường khi người dùng muốn truy cập vào hệ thống của mình như hệ điều hành Windows 7 thì anh ta cần phải cung cấp thông tin gồm tài khoản cùng với mật khẩu liên quan. Vì nhiều lý do cá nhân mà người sử dụng thường đặt mật khẩu khá dễ nhớ và liên quan đến các thông tin đặc biệt của mình như ngày sinh, số điện thoại hay là tên người yêu, thú cưng của mình. Do đó mà việc tấn công mật khẩu thường có tỉ lệ thành công cao. Đặc biệt, các mật khẩu lại thường được dùng chung cho nhiều dịch vụ khác nhau cho nên khi một mật khẩu hệ thống bị phá vỡ thì các hệ thống khác cũng chịu chung số phận như tình huống mà các hacker thuộc nhóm Luzsec khi tấn công vào diễn đàn của công ty bảo mật danh tiếng là BKIS đã công bố trên blog. Một khi việc bẻ khóa thành công thì hacker sẽ tiến hành các thao tác leo thang đặc quyền, chạy những chương trình nguy hiểm trên hệ thống bị tấn công và sau đó là tiến hành che dấu tập tin, xóa dấu vết để phòng chống bị điều tra.
Có nhiều kỹ thuật bẻ khóa khác nhau từ các phương pháp thủ công cho đến tự động dựa trên cơ chế dò từ điển hay tấn công brute-force. Để tấn công theo dạng thủ công thì hacker sẽ đoán mật khẩu của tài khoản (thường là Administrator) dựa trên các đặc điểm của người dùng như số điện thoại, ngày sinh, … và tiến hành thử nghiệm cho đến khi đăng nhập thành công. Với phương pháp này, hacker cần phải tìm hiểu thông tin của người dùng khá kỹ thông qua các cơ sở dữ liệu được công bố trên internet hay những mối quan hệ thân quen của nạn nhân.
Còn có các cách thức hiệu quả hơn, đó là hacker tìm cách đánh cắp những tập tin mật khẩu được lưu trữ trên máy tính như tập tin /etc/passwd trên Linux, tập tin SAM trên hệ thống Windows. Các tập tin này chứa thông tin người dùng và mật khẩu đã được mã hóa một chiều theo các thuận toán băm (MD5, SHA) sau đó sử dụng công cụ để tiến hành bẻ khóa theo dạng brute-force hay dò từ điển. Một cách tổng quan, có bốn dạng tấn công mật khẩu là :
- Passive Online: Nghe trôm sự thay đổi mật khẩu trên mạng. Cuộc tấn công thụ động trực tuyến bao gồm: sniffing, man-in-the-middle, và replay attacks (tấn công
dựa vào phản hồi) - Active Online: Đoán trước mật khẩu nguời quản trị. Các cuộc tấn công trực tuyến bao gồm việc đoán password tự động.
- Offline: Các kiểu tấn công như Dictionary, hybrid, và brute-force.
- Non-Electronic: Các cuộc tấn công dựa vào yếu tố con người như Socialengineering, Phising…
Passive Online Attack
Một cuộc tấn công thụ động trực tuyến là đánh hơi (sniffing) để tìm các dấu vết, các mật khẩu trên một mạng. Mật khẩu là bị bắt (capture) trong quá trình xác thực và sau đó có thể được so sánh với một từ điển (dictionary) hoặc là danh sách từ (word list). Tài khoản người dùng có mật khẩu thường được băm (hashed) hoặc mã hóa (encrypted) trước khi gửi lên mạng để ngăn chặn truy cập trái phép và sử dụng. Nếu mật khẩu được bảo vệ bằng cách trên,một số công cụ đặc biệt giúp hacker có thể phá vỡ các thuật toán mã hóa mật khẩu.
Active Online Attack
Cách dễ nhất để đạt được cấp độ truy cập của một quản trị viên hệ thống là phải đoán từ đơn giản thông qua giả định là các quản trị viên sử dụng một mật khẩu đơn giản. Mật khẩu đoán là để tấn công. Active Online Attack dựa trên các yếu tố con người tham gia vào việc tạo ra mật khẩu và cách tấn công này chỉ hữu dụng với những mật khẩu yếu.
Trong chương 6, khi chúng ta thảo luận về các giai đoạn Enumeration, bạn đã học được những lỗ hổng của NetBIOS Enumeration và Null Session. Giả sử rằng NetBIOS TCP mở port 139, phương pháp hiệu quả nhất để đột nhập vào Win NT hoặc hệ thống Windows 2000 là đoán mật khẩu. Cái này được thực hiện bằng cách cố gắng kết nối đến hệ thống giống như một quản trị viên thực hiện. Tài khoản và mật khẩu được kết hợp để đăng nhập vào hệ thống. Một hacker, đầu tiên có thể thử để kết nối với tài nguyên chia sẽ mặc định là Admin$, C$ hoặc C:\Windows. Để kết nối tới các ổ đĩa máy tính, ổ đĩa chia sẻ, gõ lệnh sau đây trong Start > Run:\\ ip_address \ c$
Các chương trình tự động có thể nhanh chóng tạo ra file từ điển, danh sách từ, hoặc kết hợp tất cả có thể có của các chữ cái, số và ký tự đặc biệt và cố gắng để đăng nhập vào. Hầu hết các hệ thống ngăn chặn kiểu tấn công này bằng cách thiết lập một số lượng tối đa của các nỗ lực đăng nhập vào một hệ thống trước khi tài khoản bị khóa. (ví dụ khi bạn đăng nhập vào một trang web mà bạn nhập sai password 5 lần thì tài khoản bạn từ động bị khóa lại 1 ngày).
Offline Attack
Cuộc tấn công Offline được thực hiện tại một vị trí khác hơn là hành động tại máy tính có chứa mật khẩu hoặc nơi mật khẩu được sử dụng. Cuộc tấn công Offline yêu cầu phần cứng để truy cập vật lý vào máy tính và sao chép các tập tin mật khẩu từ hệ thống lên phương tiện di động. Hacker sau đó có file đó và tiếp tục khai thác lỗ hổng bảo mật.
Bảng sau minh họa vài loại hình tấn công offline:
Type of Attack | Characteristics | Example Password |
Dictionary attack | Nỗ lực để sử dụng mật khẩu từ từ điển |
Administrator |
Hybrid attack | Thay thế một vài ký tự của mật khẩu |
Administrator |
Brute-force-attack | Thay đổi toàn bộ ký tự của mật khẩu |
Ms!tr245@F5a |
Các kiểu tấn công Offline
Dictionary Attack: là cách tấn công đơn giản và nhanh nhất trong các loại hình tấn công. Nó được sử dụng để xác định một mật khẩu từ thực tế, và mật khẩu có thể được tìm thấy trong từ điển. Thông thường nhất, cuộc tấn công sử dụng một tập tin từ điển các từ có thể, sau đó sử dụng một thuật toán được sử dụng bởi quá trình xác thực. Các hàm băm (hash) của các từ trong từ điển được so sánh với hàm băm của mật khẩu người dùng đăng nhập vào, hoặc với các mật khẩu được lưu trữ trong một tập tin trên máy chủ. Dictionary Attack chỉ làm việc nếu mật khẩu là một thực thể có trong từ điển. Nhưng kiểu tấn công này có một số hạn chế là nó không thể được sử dụng với các mật khẩu mạnh có chứa số hoặc ký hiệu khác .
Hybrid Attack là cấp độ tiếp theo của hacker, một nỗ lực nếu mật khẩu không thể được tìm thấy bằng cách sử dụng Dictionary Attack. Các cuộc tấn công Hybrid bắt đầu với một tập tin từ điển và thay thế các con số và các ký hiệu cho các ký tự trong mật khẩu. Ví dụ, nhiều người sử dụng thêm số 1 vào cuối mật khẩu của họ để đáp ứng yêu cầu mật khẩu mạnh. Hybrid được thiết kế để tìm những loại bất thường trong mật khẩu.
Brute Force Attack là một cuộc tấn công bằng thuật toán brute-force, mà mọi cố gắng kết hợp có thể có của chữ hoa và chữ thường, chữ cái, số, và biểu tượng. Một cuộc tấn công bằng thuật toán Brute-force là chậm nhất trong ba loại tấn công vì có thể kết hợp nhiều ký tự trong mật khẩu. Tuy nhiên, cách này có hiệu quả, cần có đủ thời gian và sức mạnh xử lý tất cả.
Noneelectronic Attack
Các cuộc tấn công nonelectronic là dạng tấn công mà không sử dụng bất kỳ kiến thức kỹ thuật nào. Loại tấn công có thể bao gồm các kỹ thuật như social engineering, shoulder surfing, keyboard sniffing, dumpster diving.
Công Cụ Tấn Công
Legion : Đây là công cụ có khả năng quét nhiều máy tính cùng lúc thông qua các dãy địa chỉ IP để tìm ra các tài nguyên chia sẽ và đoán mật khẩu của người dùng tự động.
L0pht Crack : là ứng dụng thường được đề cập trong các câu hỏi của kì thi lấy chứng chỉ CEH, L0pht Crack (còn gọi tắt với các tên LC5 hay LC6 tùy theo phiên bản của ứng dụng) có khả năng bẻ khóa mật khẩu rất mạnh mẽ dựa trên dữ liệu từ điển có sẳn của ứng dụng hay tiến hành bẻ khóa theo dạng brute-force (quét cạn) nếu như dò tìm điển không thành công. Với ứng dụng này, những máy tính có cấu hình càng mạnh thì tỉ lệ thành công càng cao.
Join The Riper : Ứng dụng dạng dòng lệnh này có thể bẻ khóa mật khẩu của các hệ thống Unix và Windows.
KerbCrack : Chương trình này gồm hai thành phần là : kerbsniff và kerbcrack, trong đó kerbsniff sẽ lắng nghe và bắt giữ các thông tin đăng nhập của hệ thống Windows 2000 / XP / 2003 / Vista sau đó sẽ gởi đến cho kerbcrack bẻ khóa thông qua các phương pháp quét cạn hay dùng từ điển.