Hỏi về: Vì sao mitmproxy có thể đọc inspect được tất cả domain có ssl

Alice35

New Member
03/11/2021
0
2 bài viết
Hỏi về: Vì sao mitmproxy có thể đọc inspect được tất cả domain có ssl
mình thắc mắc vì sao thằng https://mitmproxy.org/ có thể giải mã đc packet ssl của tất cả domain nhỉ, vì mình từng thử cài 1 web server https khi tạo private key và CA thì nó bắt phải khai báo subjectAltName , các domain nào khai được khai báo trong này thì sau này mình dùng domain này truy cập về web server mình nó mới ko bị báo lỗi CA chứ nhỉ
vd: mình test trên máy localhost
sửa file hosts :
192.168.1.10 test.local1
192.168.1.10 test.local2

tạo 1 web server https và add test.local1 vào subjectAltName

trust CA tương ứng với CA của web server https vừa tạo
dùng webbrowser truy cập vào test.local1 >> ok https ko báo lỗi
dùng webbrowser truy cập vào test.local2 >> https báo lỗi chứng chỉ không hợp lệ

sau đó mình add test.local2 vào subjectAltName >> rồi truy cập lại >> ok https ko báo lỗi

tuy nhiên thằng mitmproxy thì nó ko cần add subjectAltName nhưng nó vẫn bắt đc các packet ssl của web server https , chỉ cần mình trust CA của nó thôi

ko biết nó làm cách nào nhỉ
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
mình thắc mắc vì sao thằng https://mitmproxy.org/ có thể giải mã đc packet ssl của tất cả domain nhỉ, vì mình từng thử cài 1 web server https khi tạo private key và CA thì nó bắt phải khai báo subjectAltName , các domain nào khai được khai báo trong này thì sau này mình dùng domain này truy cập về web server mình nó mới ko bị báo lỗi CA chứ nhỉ
vd: mình test trên máy localhost
sửa file hosts :
192.168.1.10 test.local1
192.168.1.10 test.local2

tạo 1 web server https và add test.local1 vào subjectAltName

trust CA tương ứng với CA của web server https vừa tạo
dùng webbrowser truy cập vào test.local1 >> ok https ko báo lỗi
dùng webbrowser truy cập vào test.local2 >> https báo lỗi chứng chỉ không hợp lệ

sau đó mình add test.local2 vào subjectAltName >> rồi truy cập lại >> ok https ko báo lỗi

tuy nhiên thằng mitmproxy thì nó ko cần add subjectAltName nhưng nó vẫn bắt đc các packet ssl của web server https , chỉ cần mình trust CA của nó thôi

ko biết nó làm cách nào nhỉ
Do bạn đã trust CA của nó rồi đó!
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Do bạn đã trust CA của nó rồi đó!
cho mình hỏi, mình có thể can thiệp vào quá trình handshake của tls không nhỉ, cụ thể là ở bước server hello, theo lý thuyết thì client sẽ gửi 1 packet client hello về server trong đó có SNI , server dựa vào SNI để xem thử trong SAN của mình có domain name đó không, vậy tại bước server hello của mitm mình bắt buộc phải làm sao đó để trong SAN của cert có domain name mà client gửi sang, vậy có phải tại đây tùy theo domain name của client gửi sang mà mình tạo 1 cert mới rồi mới send packet server hello phải ko nhỉ
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Như bạn nói đó cũng là một khả năng.
Mitmproxy nó tạo ra một proxy giả mạo CA ở giữa máy client và server thật nên có thể can thiệp.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Bên trên