Các hệ điều hành dựa trên Linux và Unix là cốt lõi của các lĩnh vực An toàn thông tin, An ninh mạng, Mật mã, v.v ... Chúng đi kèm với nhiều loại công cụ dành cho mục đích an ninh mạng.
Hãy để chúng tôi xem xét ba công cụ như vậy: Aircrack-ng, Jack The Ripper và Radare2.
Aircrack-ng Suite
Bộ Aircrack-ng có lẽ là bộ công cụ dò tìm và chụp mật khẩu mạng WiFi được sử dụng rộng rãi nhất. Nó có nghĩa là bẻ khóa mật khẩu mạng không dây giao thức IEEE 802.11, mật khẩu này chủ yếu được bảo vệ bởi các tiêu chuẩn Wifi Protected Access (WPA) hoặc Wifi Protected Access 2 (WPA2) và được xác thực bằng phương pháp xác thực Pre-Shared Key (PSK).
Nó cung cấp các chương trình riêng biệt để theo dõi trạng thái của các thiết bị mạng, bắt gói và kết xuất tệp, bẻ khóa mật khẩu, v.v.
Lưu ý rằng việc bẻ khóa WPA / WPA2 bằng thuật toán tiền điện tử đã được các nhà nghiên cứu nhận thấy là gần như không thể. Do đó, cách bẻ khóa WPA / WPA2 bằng các chương trình như aircrack-ng, là Brute Force và yêu cầu một từ điển mật khẩu để bẻ khóa nó. Điều đó có nghĩa là nó chỉ có thể bẻ khóa mật khẩu nếu mật khẩu là một từ điển.
Bạn có thể dễ dàng Cài đặt Aircrack-ng trên hệ thống của mình bằng cách sử dụng tập lệnh trình cài đặt do packagecloud.io cung cấp. Mở thiết bị đầu cuối và chạy các lệnh sau dựa trên loại hệ điều hành Linux của bạn.
Trên các bản phân phối dựa trên Debian, chạy lệnh sau:
curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.deb.sh | sudo bash
Đối với Trình quản lý gói mũ đỏ (RPM), chạy lệnh sau:
curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.rpm.sh | sudo bash
Bây giờ, hãy thử bẻ khóa mật khẩu của mạng Wi-Fi cục bộ bằng Aircrack-ng.
Tìm tất cả, chạy lệnh iwconfig
để tìm tên của giao diện mạng không dây của bạn.
iwconfig
Nơi đây, wlp2s0
là tên của giao diện không dây của tôi. ESSID, tức là tên mạng là “tmp”, là tên mạng Wifi mà tôi đang kết nối.
Chúng tôi sẽ sử dụng airmon-ng
lệnh để bắt đầu một giao diện giám sát mạng trên wlp2s0
.
sudo airmon-ng start wlp2s0
Tìm dòng ở cuối để tìm giao diện chế độ màn hình. Trong ví dụ trên, nó là mon0
. Bây giờ chúng ta sẽ bắt đầu bắt các gói mạng bằng cách chạy airodump-ng
trên mon0
.
sudo airodump-ng mon0 -w log
Nó hiển thị một màn hình của các gói mạng được bắt từ các mạng khác nhau. Các -w nhật ký
một phần là để lưu các gói mạng trong các tệp nhật ký. Tiền tố của tệp nhật ký sẽ là phần được chỉ định sau -w, trong trường hợp này là "nhật ký".
Để chương trình bắt được khóa băm của cụm mật khẩu, quá trình bắt tay WPA phải diễn ra trên mạng, tức là người dùng nên cố gắng kết nối với nó. Người dùng có thể tự ngắt kết nối Wifi của mình và kết nối lại với nó. Ở góc trên bên phải bây giờ, nó thông báo rằng bắt tay WPA đã bị bắt.
Bây giờ bấm Ctrl + C
để chấm dứt bãi chứa. Bạn có thể xem các tệp nhật ký đã tạo trong thư mục hiện tại.
Bước tiếp theo và cuối cùng là chạy aircrack-ng với từ điển để xem từ nào khớp với khóa băm bị chặn từ lần bắt tay.
aircrack-ng log-01.cap -w tmpdict.txt
Nơi đây log-01.cap là logfile được tạo bởi airodump-ng
lệnh và tmpdict.txt là tệp từ điển. Một số từ điển lớn có sẵn trực tuyến có thể được tải xuống và sử dụng tại đây.
Để chọn một mạng mục tiêu, hãy nhập số chỉ mục cho mạng từ danh sách các mạng hiển thị trên màn hình.
Nếu một khóa được khớp từ trong từ điển, khóa đó sẽ dừng và hiển thị thông báo sau.
Rõ ràng là trong trường hợp các tệp từ điển lớn hơn, chương trình sẽ mất nhiều thời gian hơn để chạy, vì nó kiểm tra mọi mục nhập trong từ điển.
Như đã đề cập trước đây, mật khẩu chỉ có thể được bẻ khóa nếu nó có trong tệp từ điển. Bảo mật WPA đủ mạnh để sử dụng bất kỳ thuật toán tiền điện tử nào sẽ không cho phép bẻ khóa mật khẩu. Do đó, bạn nên có một mật khẩu dài mạnh với nhiều ký tự đặc biệt trên thiết bị Wifi của mình, để mọi hoạt động bẻ khóa mật khẩu không bao giờ thành công.
John The Ripper
John the Ripper là một công cụ dùng để bẻ khóa các mật khẩu Unix yếu. Nó là một công cụ rất dễ sử dụng được gọi trên các tệp mật khẩu. Nó chạy ở ba chế độ.
Chế độ đơn
Kiểm tra tất cả các trường GECOS để tìm mật khẩu, tức là kiểm tra mật khẩu trong thông tin tài khoản người dùng; tên người dùng, tên, họ, v.v.
sudo john --single / etc / shadow
Chế độ danh sách từ
Kiểm tra mật khẩu với từng mục nhập từ tệp danh sách từ (từ điển).
sudo john --wordlist = passlist.txt / etc / shadow
Ở đây, mật khẩu của người dùng ‘user3’ là “admin”. John có thể bẻ khóa nó vì cụm từ ‘admin’ có trong tệp passlist.txt.
Chế độ tăng dần
Kiểm tra tất cả các kết hợp có thể có cho một phạm vi đã định cấu hình. Theo mặc định, nó xem xét tất cả các ký tự trong bộ ký tự ASCII và tất cả các độ dài từ 0 đến 13. Không cần phải nói, tùy thuộc vào phạm vi được cấu hình, chế độ này có thể mất rất nhiều thời gian để chạy.
Cấu hình cho điều này có thể được thay đổi trong /etc/john/john.conf
tập tin.
sudo john --incremental / etc / shadow
Radare2
Radare2 (bí danh r2) là một công cụ thiết kế ngược cho Linux. Nó có thể tháo rời, gỡ lỗi một tệp nhị phân thực thi, với một danh sách khổng lồ các tùy chọn để thao tác dữ liệu trong thời gian chạy.
Hãy để chúng tôi xem làm thế nào để tháo rời một chương trình C rất nhỏ bằng cách sử dụng r2. Lưu ý rằng cần có hiểu biết cơ bản về hợp ngữ để sử dụng công cụ này.
Đầu tiên, tạo một chương trình C nhỏ trong vim hoặc bất kỳ trình soạn thảo nào bạn chọn.
/*test.c*/ #include int main () {int i = 0; printf ("% d \ n", i); trả về 0; }
Như bạn có thể thấy, tất cả những gì chương trình này làm là lưu trữ chữ số 0 trong một biến và truy cập vào biến đó để in ra.
Bây giờ chúng ta sẽ biên dịch chương trình.
gcc test.c -o test
Một tệp thực thi được tạo trong thư mục hiện tại với tên ‘test’. Chạy nó để xem đầu ra ‘0’.
./kiểm tra
Hãy cài đặt r2 ngay bây giờ. Tên gói trong Ubuntu và các bản phân phối tương tự là radare2.
sudo apt cài đặt radare2
Ghi chú: Đối với các phiên bản Ubuntu cũ hơn (phiên bản 14.04 trở xuống), bạn cần sử dụng apt-get
nên được sử dụng thay vì đúng cách
.
Bây giờ chúng ta sẽ bắt đầu dấu nhắc lệnh r2 với tệp thực thi của chúng ta, ‘test’.
thử nghiệm r2
Để nhận danh sách các lệnh con, hãy nhập ?
. Ví dụ. để nhận danh sách các lệnh con cho lệnh Một
, đi vào Một?
Một?
Chúng tôi sẽ chạy lệnh con aa
, sẽ phân tích tệp nhị phân hoàn chỉnh. Nó sẽ không xuất ra bất cứ thứ gì. Nhưng sau khi phân tích nhị phân, chúng ta có thể sử dụng P?
lệnh con để tháo rời mã.
Tiếp theo, chúng tôi chuyển đến chủ yếu
chức năng của chương trình. Mọi chương trình C thực thi đều có chủ yếu
hoạt động như điểm bắt đầu của nó.
s chính
Bạn có thể thấy rằng tiền tố của lời nhắc đã thay đổi địa chỉ bộ nhớ hiện tại, tức là chương trình hiện đang được tìm kiếm địa chỉ của hàm chủ yếu
.
Tiếp theo, chúng ta sử dụng lệnh con pdf
, sẽ in phần tách rời của một hàm. Chúng tôi gọi nó bằng sym.main
, là tên của hàm chính trong hợp ngữ.
pdf sym.main
Như chúng ta có thể thấy trong ảnh chụp màn hình ở trên, chúng ta có quá trình tháo gỡ hoàn toàn chương trình C của mình. Bây giờ chúng ta có thể phân tích chương trình đang làm gì bằng cách đọc hợp ngữ.
Ví dụ, mov dword [rbp-0x4], 0x0
là gán giá trị (0) cho vị trí bộ nhớ rbp - con trỏ cơ sở, 0x4 - Kích thước bộ nhớ cần thiết cho một số nguyên.
Chúng ta có gọi sym.imp.printf
, sẽ in nội dung của sổ đăng ký eax
, tức là giá trị 0.
Có nhiều tùy chọn khác để thao tác và gỡ lỗi luồng chương trình trong r2. Bạn có thể thử các tùy chọn khác được hiển thị với ?
yêu cầu. Để lưu bất kỳ nhật ký nào hoặc đầu ra tách rời vào một tệp, bạn có thể chuyển đầu ra như sau:
pdf main> main.s
Đây là tổng quan về một số công cụ hack được sử dụng rộng rãi nhất trong Linux. Nếu bạn thấy trang này hữu ích, hãy nhớ chia sẻ nó trên các cộng đồng trực tuyến yêu thích của bạn.