
02-02-2010, 20:07
|
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,778
|
|
אם אתה מדבר על SSL Proxy שהוא Man-In-The-Middle שיכול לקרוא את המידע שעובר, אז:
אתה פשוט עושה את ה SSL מולו במקום מול אתר הבנק, והוא בתורו עושה מול אתר הבנק חיבור HTTPS חדש.
כמובן שלך אין את המפתח הפרטי שיש על השרת של אתר הבנק, ולכן אינך יכול לחתום על התעבורה בצורה דיגיטלית, ולכן אינך יכול להשתמש בתעודת ה SSL של הבנק, או, במילים אחרות, תקבל שגיאה בדפדפן שתעודת ה SSL שלך אינה אמינה. הדרך היחידה שבה כן תוכל לעשות אותה אמינה, היא להשיג תעודה אמינה על כתובת *אחרת*, עליה להריץ את ה SSL Proxy שלך (שזה בעצם Reverse HTTP Proxy), ושהיא תתחבר לבנק. אז החיבור יחשב אמין מבחינת הדפדפן שלך, אבל אתה לא תראה את הדומיין של הבנק (אא"כ הצלחת לגרום למנפיק SSL טיפש לתת לך תעודה על הדומיין של הבנק...)
אם אתה מדבר על HTTP Proxy שתומך ב SSL - אזי הוא כלל לא SSL Proxy אלא TCP Proxy, שמשתמש במתודת פרוקסי שנקראת CONNECT. בעצם זה אומר שהוא פותח עבורך חיבור TCP אל שרת היעד, ואתה מעביר דרכו את כל התקשורת (כמו ראוטר, אבל בשכבה 4...). כיוון שהתקשורת לא מסתיימת ולא מתחילה אצלו, אין השפעה על ה SSL, וכל המידע שעובר דרך הסוקט הזה מוצפן והוא לא יכול לפענח את המידע שעבר דרכו למרות שהוא עבר דרכו מההתחלה ועד הסוף...
|