Người hướng dẫn: Bây giờ, mọi thứ chúng
tôi đã làm cho đến nay sẽ chỉ hoạt động với các trang HTTP.
Lý do tại sao nó hoạt động chống lại HTTP
vì như chúng ta đã thấy, dữ
liệu trong HTTP được gửi dưới dạng văn bản thuần túy.
Vì vậy, đó là văn bản mà những người như chúng ta có thể đọc và hiểu.
Đó là lý do tại sao khi chúng ta là người
đứng giữa, chúng ta có thể đọc
văn bản này và nếu muốn, chúng ta có thể sửa đổi văn bản này
theo ý muốn.
Bây giờ, đây rõ ràng là một sự
cố và sự cố này đã được khắc phục trong HTTPS.
Vì vậy, như bạn đã biết, hầu hết các trang web đều sử dụng HTTPS.
Lý do tại sao, như
tôi đã nói, bởi vì nó là một phiên bản HTTP an toàn
hơn và về cơ bản, cách
hoạt động của nó là nó thêm một lớp bổ sung trên HTTP, đó là
nơi xuất phát chữ S.
Vì vậy, đó là một giao thức HTTP
an toàn và lớp bổ sung này sẽ mã hóa dữ liệu văn bản thuần
túy mà HTTP gửi.
Vì vậy, nếu một người quản lý để trở thành người đàn ông
ở giữa, họ sẽ có thể đọc dữ liệu này
nhưng dữ liệu sẽ vô nghĩa.
Nó sẽ không thể đọc được
đối với người chặn kết nối.
Giờ đây, HTTPS dựa vào TLS hoặc SSL để mã hóa dữ liệu
và điều này rất khó bị phá vỡ.
Do đó, để vượt qua điều này, phương
pháp đơn giản nhất
là hạ cấp các kết nối HTTPS xuống HTTP.
Vì vậy, vì chúng tôi là người đứng
giữa, chúng tôi có thể kiểm tra xem mục tiêu có đang yêu cầu trang web HTTPS
hay không và thay vì cung cấp cho anh ta phiên bản HTTPS của trang web đó,
chúng tôi sẽ cung cấp cho anh ta phiên bản HTTP.
Bằng cách này, dữ liệu sẽ được gửi ở dạng văn bản thuần
túy và chúng tôi sẽ có thể đọc nó chính xác như tôi đã chỉ cho
bạn trong bài giảng trước.
Để làm điều này, chúng tôi sẽ phải cấu hình
và sử dụng một công cụ có tên là SSL Strip theo cách thủ công
và tôi chỉ cách thực hiện điều này trong các khóa học nâng cao hơn
của mình nhưng may mắn thay, bettercap có một caplet thực
hiện tất cả những điều đó cho chúng tôi.
Tôi cũng đã tự mình sửa đổi caplet này để
nó hoạt động đáng tin cậy hơn và trên nhiều trang web hơn.
Vì vậy, hãy đảm bảo rằng bạn sử dụng hình ảnh Kali tùy chỉnh
mà tôi đã tạo cho khóa học
này vì nó đi kèm với caplet đã sửa đổi này theo mặc định.
Nếu bạn muốn sử dụng Kali gốc, thì bạn
sẽ phải tải xuống caplet này theo cách thủ công và đặt
nó vào đúng đường dẫn.
Tôi đang sử dụng Kali tùy chỉnh ở đây, vì vậy tôi sẽ
không cần phải làm bất kỳ điều gì trong số đó.
Tôi chỉ có thể chạy bettercap và sử dụng
nó nhưng trước khi làm
điều đó, tôi chỉ muốn vào thư mục chính và sửa
đổi spoof caplet mà chúng tôi đã sử dụng trong các bài
giảng trước.
Và tôi chỉ muốn sửa đổi một điều trong điều này.
Vì vậy, tôi sẽ nhấp chuột
phải vào nó và mở nó bằng Leafpad.
Và những gì tôi muốn sửa đổi là tôi muốn thêm một tùy chọn
vào phần thử nghiệm ở đây.
Vì vậy, như bạn biết, dòng này net. hít vào sẽ bật trình
đánh hơi của tôi nhưng
trước khi bật, tôi muốn
giăng lưới. bị nghẹt mũi. cục bộ thành sự thật.
Và tùy chọn này sẽ làm gì, nó
sẽ báo cho bestcap biết tất cả dữ liệu, ngay
cả khi nó cho rằng dữ liệu này là dữ liệu cục bộ.
Lý do tại sao tôi đặt tùy chọn này thành
true vì khi chúng tôi sử dụng caplet bỏ qua HTTPS, dữ liệu
sẽ có vẻ như được gửi từ máy tính của chúng
tôi.
Vì vậy, bettercap sẽ nghĩ những mật khẩu này thuộc
về tôi, thuộc về máy tính của
tôi và nó sẽ không hiển thị với tôi trên màn hình.
Đó là lý do tại sao chúng tôi đặt
nó thành true để chúng tôi có thể thấy tất
cả tên người dùng và mật khẩu được gửi trên
các trang web mà chúng tôi sẽ hạ cấp từ HTTPS xuống HTTP.
Vì vậy, tôi sẽ lưu nó, Control
+ S và thoát khỏi nó, Control
+ Q và bây giờ chúng tôi thực sự
đã sẵn sàng sử dụng caplet này
và xem cách chúng tôi có thể hạ cấp HTTPS xuống HTTP
và lấy cắp mật khẩu từ các trang đăng nhập
sử dụng HTTPS theo mặc định .
Vì vậy, tôi sẽ đi đến thiết bị đầu cuối
của mình và tôi sẽ sử dụng bettercap chính xác như
tôi đã sử dụng nó trước đây.
Vì vậy, chúng tôi đang làm bản tóm tắt tốt hơn, tên của chương trình.
Chúng tôi đang cung cấp cho nó giao
diện của chúng tôi sau đối số iface.
Chúng tôi đang sử dụng đối số
caplet để chỉ định caplet chạy ngay sau
khi chúng tôi chạy chương trình và chúng
tôi đang chạy caplet giả mạo,
đối số mà chúng tôi đã xây dựng trong bài giảng
trước sẽ chạy lệnh giả mạo ARP và chạy trình
thám thính cho chúng ta.
Vì vậy, tôi sẽ nhấn Enter.
Và như bạn có thể thấy, mọi thứ đã được thực thi như mong đợi.
Nếu chúng tôi trợ giúp,
chúng tôi sẽ thấy tất cả các mô-đun đang
chạy và chúng tôi có arp. giả mạo và máy đánh hơi đang
chạy với trinh sát và với đầu dò.
Vì vậy, đây chính xác là những gì chúng tôi muốn từ caplet của chúng tôi.
Vì vậy, trước hết, caplet bỏ qua HSTS là một
trong nhiều caplet mà bestcap đi kèm.
Nếu bạn muốn liệt kê tất cả các caplet này,
bạn có thể làm caplet. hiển thị và như bạn có
thể thấy, bạn sẽ nhận
được danh sách tất cả các caplet
mà bạn có và vị trí của chúng trên hệ thống.
Bây giờ, caplet muốn chạy là caplet hstshijack.
Cái này ở ngay đây.
Và để chạy bất kỳ caplet nào trong
số này, tất cả những gì bạn phải làm là chỉ cần gõ tên của nó.
Và như thường lệ, bạn có thể sử dụng Tab để tự động hoàn thành.
Vì vậy, để chạy caplet của chúng
tôi ngay tại đây, tất cả những gì tôi phải
làm là gõ hs và nhấn Tab và như bạn
có thể thấy, nó sẽ tự động hoàn thành cho
tôi và nhập tên caplet.
Bây giờ, nếu tôi nhấn Enter, điều này sẽ tải
caplet với tất cả các tùy chọn
của nó và nó sẽ chạy nó cho tôi.
Vì vậy, như bạn có thể thấy, bởi vì chúng tôi không thấy
bất kỳ lỗi nào, điều này có nghĩa là mọi thứ đã được thực thi như mong đợi.
Vì vậy, hãy vào máy Windows, duyệt
qua một số trang HTTPS và xem liệu
chúng ta có thể kiểm tra dữ liệu, tên người dùng, mật
khẩu và URL mà họ nhập trên máy tính của họ hay không.
Vì vậy, tôi có máy tính Windows của mình ở đây.
Tôi đã cài đặt Chrome.
Đây là phiên bản Chrome mới nhất tại thời
điểm ghi bài giảng này.
Một ý tưởng thực sự hay trước khi thử tất cả những điều
này là xóa dữ liệu duyệt web của bạn vì các
trang web mà chúng tôi sẽ cố truy cập có thể được lưu trong
bộ nhớ cache và chúng có thể chỉ được tải từ bộ nhớ
cache của bạn.
Điều này sẽ chỉ xảy ra nếu bạn đang truy cập lặp đi lặp
lại cùng một trang web, chủ yếu là khi thử nghiệm.
Do đó, tốt hơn hết bạn
nên Control + Shift + Delete
và nhấp vào xóa dữ liệu duyệt web.
Hãy chắc chắn rằng tất cả những điều này được nhấp vào.
Đảm bảo rằng nó được đặt thành
mọi lúc và nhấp vào Clear để xóa tất cả.
Và hãy tiếp tục và truy cập một trang web
sử dụng HTTPS.
Vì vậy, một ví dụ điển hình sẽ là LinkedIn. com.
Và hoàn hảo.
Nếu bạn nhìn vào đây ở trên
cùng, bạn sẽ thấy trang web đang tải qua HTTP,
không phải qua HTTPS.
Do đó, chúng tôi sẽ có thể thấy bất kỳ thứ gì người dùng nhập
vào các hộp này.
Vì vậy, chúng ta hãy đặt một tên người dùng.
Hãy đặt nó thành zaid @ zsecurity. tổ chức.
Và tôi sẽ đặt mật khẩu là 1234567890.
Nó không thực sự quan trọng.
Bạn có thể sử dụng bất kỳ mật khẩu nào.
Và tôi sẽ nhấn Enter để đăng nhập.
Điều này là sai, vì vậy rõ ràng là chúng tôi nhận được thông
báo lỗi nhưng nếu chúng tôi quay lại
Kali, như bạn có thể thấy, chúng tôi đang thu
thập tất cả dữ liệu này vì nó không được gửi qua HTTPS nữa.
Nó đang được gửi qua HTTP.
Và nếu bạn nhìn vào đây, bạn có
thể thấy chúng tôi đã nắm bắt được thông tin đăng nhập.
Nó được gửi đến LinkedIn. com.
Đã gửi đến URL cụ thể này, một URL đăng nhập và bạn có thể thấy tên
người dùng là zaid @ zsecurity. tổ chức.
Và mật khẩu là 123 cho đến 90.
Vì vậy, điều đó thực sự, thực sự tốt.
Hãy tiếp tục và thử nghiệm một trang web HTTPS khác.
Hãy chuyển đến StackOverflow. com.
Một lần nữa, bạn có thể thấy ở trên,
nó đang tải qua HTTP, không phải HTTPS.
Vì vậy, tôi sẽ nhấp vào Đăng nhập.
Và một lần nữa, tôi sẽ đặt email của mình.
Zaid @ zsecurity. tổ chức.
Và chúng tôi sẽ đặt mật khẩu là 1234567890.
Nhấn Enter.
Và chúng ta hãy quay lại máy Kali.
Cuộn xuống lần này vì chúng tôi đang bị mắc kẹt ở trên cùng.
Và hoàn hảo, bạn có thể thấy chúng tôi có một yêu cầu ĐĂNG tại đây.
Nó được gửi đến URL cụ thể này.
Một lần nữa, bạn có thể thấy thông tin đăng nhập trong URL.
Bạn có thể xem trang web của chính nó.
Stackoverflow. com.
Và nếu chúng ta cuộn xuống thêm một chút, chúng ta có thể
thấy tên người dùng là zaid @ zsecurity. org và lại mật khẩu,
123, lên đến 90.
Vì vậy, điều đó thực sự, thực sự tốt.
Giờ đây, chúng tôi có thể hạ cấp bất kỳ kết nối HTTPS
nào xuống HTTP miễn là trang web mục tiêu
sử dụng HTTPS, không phải HSTS.
Vì vậy, phương pháp này sẽ hoạt động với hầu hết
các trang web sử dụng HTTPS, ngoại trừ các trang web thực sự phổ
biến, chẳng hạn như Facebook, Twitter, v.v.
Vì vậy, lemme chỉ cho bạn một ví dụ nhanh chóng.
Nếu tôi vào đây và thử vào Facebook. com, bạn sẽ thấy rằng trang
web được tải qua HTTPS chứ không phải qua
HTTP, mặc dù chúng tôi đã
định cấu hình caplet chính xác và mặc dù chúng tôi
có thể hạ cấp kết nối HTTPS trên nhiều trang web,
chẳng hạn như LinkedIn
và Stack Overflow.
Điều này đang xảy ra bởi vì Facebook đang sử dụng HSTS,
một chút khó khăn hơn để vượt qua.
Trong bài giảng
tiếp theo, chúng ta sẽ nói rõ hơn về HSTS là gì,
tại sao lại khó vượt qua và cách
vượt qua nó một phần mà vẫn lấy được tên
người dùng và mật khẩu từ các trang web
triển khai nó, chẳng hạn như Facebook,
Twitter, v.v.