DAVID J.馬蘭:這是CS50, 這是10週的開始。 你可能還記得,我們​​已經證明 屏幕三維打印機,其上 這是設備 採用塑料線軸 然後通過加熱擠壓它 並融化它,這樣我們就可以 成昌軍 象,例如。 

因此,在萊弗里特樓 不過,最近,我 在聊天與一個你 同學小張的朋友 名為米歇爾,究竟是誰在實習 在過去的一年這個其他公司 有不同的技術用於實際 創建三維物體 像這樣的小小的這裡象。 特別是,本方​​式的工作原理 是它的東西的例子 所謂的光固化,從而 有樹脂或液體的盆地, 然後激光撞擊該 液體,漸漸的設備 電梯和升降機及升降機的東西 要打印,像一頭大象, 作為液體變成固體。 其結果,實際上 是值得的 比一些更健壯 塑料贈品你們中的一些 可能有。 

什麼好心昌 在這裡為我們所做的是 的確使用的照片時間推移 超過一個小時或更多的過程中, 也許,在這裡產生這個傢伙。 會有人誰是永遠不會到來之前 喜歡來打開始對這個視頻? 讓我一起去,怎麼樣在那裡。 上來吧。 行。 你是? 盧克:我叫盧克[聽不清]。 DAVID J.馬蘭:嗨,盧克。 很高興認識你。 

盧克:很高興見到你。 聽眾:他是UC的運行。 

DAVID J.馬蘭:我知道, 我們試圖不提倡。 好吧,讓盧克,所有 你在這裡做的CS50 被擊中空格鍵 打印這頭大象。 [視頻回放]  -  [機器呼呼]  -  [CRASH]  -  [BOOM]  -  [CRASH] [完視頻回放] DAVID J.馬蘭:所以這正是 是什麼樣子的3D打印。 這是你的大象。 感謝您的志願服務。 行。 如此反复,每次的規範 最後的項目,這個硬件的 提供給你們 是,由於某種原因, 你的項目有一定的交集 的軟件和硬件, 認識到這些是現在的資源。 

我想帶一個瞬間觸動 一旦說出來深紅色的文章 昨天深夜,這是 宣布這個傢伙在這裡,大衛· 約翰遜,誰是被高層 導師教統10相當長的一段時間, 離開哈佛的 學年結束。 我只是想 走了一會兒,說實話, 感謝大衛在CS50的面前。 他一直是良師益友 種種對我們多年來的。 

而且我覺得像我們,CS50,有 而從小一起長大的Ec 10 在這裡,因為他們在我們面前的權利。 他和歐共體10有整支球隊 一直奇妙恩典,坦率地說, 當我們拖著我們所有的設備 每一個星期,甚至幾年前, 提供了大量 律師的,因為我們是 好奇的是,他們是如何運作的Ec 10。 因此,我們的感謝和 欽佩大衛·約翰遜。 

[掌聲] 

現在,unrelatedly,所以 到底是真的近了。 我們這裡是10週。 我們只有短短 幾個星期正式 在這裡上課離開,隨後 由一對夫婦的事件。 所以,給你一個什麼樣的感覺 在地平線上,我們在這裡今天。 

本週三,召回, 我們將有一個客座講座 通過莫屬 微軟自己的史蒂夫·鮑爾默。 如果你還沒有去 cs50.harvard.edu/register, 這樣做,由於空間的限制。 它們將被檢查 這一天的ID在門口。 如果你不在這裡 上週,我想我 逗你有不同的外觀 在史蒂夫和興奮 等待著我們在週三。 

[視頻回放] 

-Passion。 

-We're將是hardcore--鐵桿。 

-Innovator。 

-Bill說,你不明白這一點。 我們要放 計算機的每個辦公桌上 而在每一個家庭,成為 座右銘的公司。 我發誓,比爾發明了它 那天晚上真的給我 一些視力 為什麼我應該說是的。 我從來沒有回頭, 真的,在那之後。 

 - 新鮮畢業的大學生,他 加入了一個初出茅廬啟動 並幫助它成長為美國的一 最成功的企業永遠。 的生活和商業 教訓一路上學到 讓他回到他的 童年的激情和熱愛。 而這些經驗已經準備好 他為他的生命中的下一個挑戰。 

什麼也沒有得到我們的方式 - 轟! 滾滾而來的鐵桿! 去快船! 

 - 這是史蒂夫·鮑爾默, “在我自己的話。” [完視頻回放] DAVID J.馬蘭: - 這個 週三CS50。 再次前往該網址在這裡。 至於是在地平線上還有什麼, 接下來的一周,週一不上課。 但下面我們將是 由上週三測驗之一。 去CS50的主頁了解詳細信息 對人物,地點和時間 對於所有的各種監考的 物流和類似物, 以及關於審查 會議是即將出版。 然後,最後,在週一,當天 感恩節假期的前一周, 意識到這將是我們最後的講座。 我們將竭誠為蛋糕和一個偉大的 這筆交易的興奮,我們希望。 

現在,一對夫婦的其他更新。 請記住,狀態 報告顯示,這是真的只是 意味著是一個休閒互動 與你的TF自豪地說出剛 多遠隨著你 最後的項目你, 或至少​​一個神智 檢查你應該 快到了 點此後不久。 那麼黑客馬拉松得出。 實現黑客馬拉松 不是一個機會 開始你的最後項目,但 是指為契機 是在或朝向中間 您的最終項目結束時, 正當一些實施 兩天後,接著CS50公平。 

現在,CS50生產 團隊,幾年前, 把一個傳情 為CS50公平,我們 以為我們今天會告訴你, 因為他們一直在努力 在一個前傳的是,一個新的視頻 今天我們將完成與。 但這裡是等著你 今年的CS50公平的。 [視頻回放]  -  [CELL電話鈴聲] [MUSIC“的主題從碟中諜”] [完視頻回放] DAVID J.馬蘭:所以這是究竟如何 我們結束最後的項目提交。 一對夫婦現在如果teasers-- 你想加入尼克在這裡 吃午飯,像往常一樣,這 週五前往該URL在這裡。 此外,如果你想 加盟尼克或本尼克 或本佳佳或任何 對CS50的團隊成員, 一定要明白的是,不久, 學期結束後, CS50將已經招募 對於明年的球隊, 核證機關,轉錄因子,設計師,生產商, 研究人員等崗位 在這裡無論是在操作CS50 前面和後面的場景。 因此,如果這可能會感興趣 給你,前往該網址在這裡。 和學生更舒適, 那麼舒服,而且在某個地方 之間的相似都歡迎 並鼓勵申請。 

因此,它是完美的時機了,沒 開玩笑,今天早上,當我醒來時, 我在我的收件箱中有這樣這裡的垃圾郵件。 它實際上下滑 通過Gmail的垃圾郵件過濾器 不知何故,最終在我的實際收件箱。 它說,“親愛的郵箱 用戶,你當前 升級至4 GB的空間。 請登錄您的帳戶 為了驗證電子空間“。 

再有就是這個漂亮的藍色 有誘人的鏈接點擊 為教師和工作人員,然後引導我 一個奇妙的合法網頁,其中 讓我給他們我的名字 和電子郵件地址,當然, 密碼,以驗證 我是誰等等。 但是,當然,由於始終是這種情況, 你到達此目標網頁, 當然,還有 至少有一個錯字, 這似乎是在指甲 任何這些詐騙的棺材。 我們會後,或許,一些其他的 鏈接到這些類型的屏幕截圖 在未來。 但我希望,大多數人 這個房間沒有clicked-- 甚至,如果你點擊 這樣的鏈接,因為這, 你還沒有走得很遠, 填寫這些表格等等。 事實上,這是確定的,如果你有。 我們會盡力,今天修復,因為, 的確,今天的談話 有關安全性。 

事實上,之一 CS50的目標是不 這麼多教你CE或 PHP或JavaScript和SQL 或任何這些潛在的 實施細則。 但它的授權,你作為人類 只是做出更明智的決策,因為它 涉及到的技術下 路這樣一來,無論你是 工程師或人文主義或 科學家或任何其他的作用, 你做明智的決定 你自己計算的使用, 或者,如果你在一個 決策位置, 在政治上,特別是 你正在做多, 比一個更好的決策 很多今天的人類已經。 我們將通過這樣做 的幾個實施例的方式。 

首先,我非常驚訝 最近發現了以下幾點。 當然,如此的密碼, 在我們大多數人 用它來保護我們的數據 - 電子郵件,聊天, 及各種類似的資源。 而剛剛通過的awkward--不顯示 手,但恥辱尷尬的樣子, 你們有多少人使用相同的密碼 在很多不同的網站的? 

呵呵,好了,我們會做的手中。 OK,所以很多你這樣做。 任何人誰這樣做,只是為什麼呢? 什麼? 是嗎? 聽眾:這很容易記住,因為 你不必記住[聽不清]。 DAVID J.馬蘭:是啊, 它很容易記住。 這是一個完全合理的, 理性的行為, 即使風險 你把你自己 在這些情況下,僅僅是 一個或多個這些網站的 很容易受到黑客或 不安全或密碼只是 這麼混賬的猜測, 任何人都可以計算出來。 這不僅是一個賬戶 損害,但在理論上,任何 佔你有在互聯網上。 所以我知道今天我可以說,沒有 使用相同的密碼無處不在, 但是這是一個很大談何容易。 但也有技巧 減輕了特別的關注。 

現在,我會發生,例如,以 使用一個名為的1Password程序。 另一種流行的一種叫LastPass的。 和一堆CS50人員使用的一個 或多個這些類型的工具。 而且長話短說, 1外賣今天 應該是的,是的,你可能有 相同的密碼無處不在, 但它很容易不再這樣做。 例如,這些天來,我知道 我的幾十個或上百個可能是一 的密碼。 我的所有其他的密碼 是偽隨機 通過這些方案在這裡的一個產生的。 並概括地說,甚至 雖然大多數這些計劃 往往配備有一點成本, 你會安裝一個這樣的程序, 然後你將存儲所有 您的用戶名和密碼 在這裡面的程序 你自己的Mac或PC或諸如此類的東西, 然後這將是 加密您的計算機上 什麼是一個希望 特別是長密碼。 所以,我有一大堆 密碼為個人網站, 然後我有一個非常 長密碼,我 用它來解鎖所有的 其他密碼。 這有什麼好看約 這樣的軟件是 即,當你訪問一個網站,是 要求你的用戶名和密碼, 這些天,我不鍵入 我的用戶名和密碼, 因為,再一次,我甚至不知道 大多數我的密碼。 我不是打鍵盤 快捷方式時,結果是 要觸發這個軟件 提示我為我的主密碼。 那麼我鍵入一個大 密碼中,然後瀏覽器 自動填充 什麼我的密碼。 所以,真正的,如果你把沒有別的 離今天的密碼而言, 這些軟件都值得 下載或投資等等 那你至少可以休息 特定的習慣。 如果你是類型的 用便利貼或like-- 賠率是你至少有一個is-- 這種習慣也一樣,我只想說, 應該是壞了。 

現在,我偶然發現,其結果 使用該軟件,因此以下。 我訂購的是食用安排, 這籃水果,最近。 我打我的專用鍵盤 快捷登錄到該網站。 並且該軟件引發了 彈出窗口說,你確定 你要我自動 提交此用戶名和密碼? 因為連接是不安全的。 

連接不 使用HTTPS,為安全, 使用該協議被稱為 SSL,安全套接字層。 事實上,如果你看看 本網站的左側上方, 它只是www.ediblearrangements.com, 沒有HTTPS時,這是不那麼好。 

現在,我是curious--也許這 在軟件只是一個錯誤。 當然,一些網站喜歡 這是很多人都知道的 至少是使用加密 或HTTPS URL來登錄你進來。 所以,我今天早上有點好奇。 我拿出我的CS50的技能, 我打開了鍍鉻督察。 它甚至不是太大的技巧。 這只是擊中了正確的鍵盤 快捷方式打開這件事。 這裡是一個很大的窗口 Chrome的督察。 

但實際上是一個 有點悲壯和荒謬的 在這裡這兩條線。 在頂部,通知的URL 其中我的用戶名和密碼 已提交。 讓我進行放大。 正是這種在這裡。 而所有這一切是 那種索然無味, 除了東西一路的 左側,這與HTTP開頭://。 所以的話,好吧,也許 他們只是發送 我的用戶名,這是 沒有什麼大不了的。 也許我的密碼被送往。 那會是怎樣的 有趣的設計決策。 

但沒了。 如果你再看看的請求 有效載荷,用戶名和密碼 我sent--我嘲笑 這些向上的slide-- 在明確了實際發送。 所以,你去這個特殊的網站, 訂購食用的安排是這樣, 而事實上,很顯然,這一切 那時我已經下令他們, 您的用戶名和密碼 即將跨越的清晰。 所以說實話,這是 完全不能接受的。 而且它是如此微不足道,避免的事情 像這樣的網站設計師 而作為網站的程序員。 

但外賣這裡 我們作為網站的用戶 只是欣賞所有 它需要的是一個愚蠢的設計 決策,不合理的設計決策, 所以,現在,如果你知道我的密碼 在這個“深紅” 網站上,你可能已經 剛鑽進一大堆 其他網站,我現在有。 而且也沒有太多的 針對該抗辯 比張今天早上做了其他。 他去食用安排, 位於倒在劍橋的街道上, 和身體上買了這個給我們。 這是不是更安全 用在這種情況下,網站。 

但細節留意的 其實什麼是瀏覽器往上頂 那裡。 但即使這樣,也有點欺騙性。 所以,另一個有趣 例如,維護方式 對this--實際上,讓我們 這樣做first--衛冕之路 針對這是一種技術 保安人會 叫雙因素身份驗證。 

有誰知道有什麼辦法解決 像這意味著問題? 什麼是雙因素認證? 或者換一種說法,怎麼 你們很多人都在使用它? 好了,幾個害羞的人。 但是,是的。 我看到了你的手走了。 什麼是雙因素認證? 

聽眾:基本上,除了 要輸入你的密碼, 你也有一個輔助[聽不清] 通過短信發送到您的手機 在[聽不清]。 DAVID J.馬蘭:沒錯。 除了一些初級形式 認證的,就像一個密碼, 你問的第二 因子,其通常 你擁有的東西 身體上的你,雖然它 可以是其它的什麼東西。 而這一點通常是 手機這些天來,你得到 發送一個臨時短信,上面寫著 “您的臨時密碼為12345。” 

所以除了我 密碼“緋紅,”我也 在任何輸入 網站已發短信給我。 或者,如果你有這樣的一個 銀行或投資賬戶, 你有時有這些 小軟件狗 實際上有一個偽隨機 內置了數生成器, 但該裝置和銀行兩 知道你的初始種子是什麼 使他們知道,即使在 你的小鑰匙扣小碼 遊行前進的每一分鐘 兩,改變價值觀, 這樣做的價值變動 銀行的服務器上 以便它們可類似地進行認證 你,不僅你的密碼, 但該臨時代碼。 現在,你可以真正做到這一點在谷歌。 坦率地說,這是一個 良好的習慣進入, 特別是如果你使用 Gmail的所有的時間上的瀏覽器。 如果你去這個網址在這裡,這是 在線為今天,然後將載玻片 點擊兩步​​驗證, 相同的實際的東西在那裡。 你會被提示給 他們的手機號碼。 然後,任何時候您登錄 Gmail時,你會不會只問了 您的密碼,也可作 這被發送到您的手機小碼 暫時的。 而只要你啟用了Cookie, 所以只要你不明確 註銷,你只有 要做到這一點在一段時間後, 就像當你坐下 在一台新計算機。 

這裡的上升空間,也就是,如果你 坐下來,在一些網吧的風格 計算機或只是一個 朋友的電腦,甚至 如果那個朋友 惡意或無意 有一些鍵盤記錄器 安裝了他或她的計算機上, 這樣,你的一切 類型被記錄下來, 至少是第二個因素,即 臨時代碼,是短暫的。 於是,他或她或任何人的 破壞計算機 不能登錄到您隨後, 即使一切 是脆弱的,甚至 完全加密。 Facebook擁有這也 與該網址在這裡, 在這裡您可以點擊登錄認證。 所以在這裡也一樣,如果你​​不這樣做 希望朋友捅人, 你不想被戳在Facebook 或發布你的狀態更新, 雙因素身份驗證 這裡可能是一個很好的事情。 再有就是這個 其它技術完全, 只是審計,這甚至 好東西對於我們人類來說, 如果兩個因素證明惱人,其中, 誠然,就可以了,或者它只是不 可在一些網站上,最低限度 密切關注是否以及何時 你登錄的網站,如果他們 讓你,是一個很好的技術,太。 因此,Facebook的也給你這個 登錄通知功能,從而 隨時隨地的Facebook意識到,HM,大衛有 登錄一些電腦或手機 我們從來沒有見過的前 一個IP地址,看起來比較陌生, 他們將至少給你一個 電子郵件的任何電子郵件地址 你有文件,說: 這是否看起來可疑的? 如果是這樣,請立即修改您的密碼。 等在那裡,太, 只是審計行為 即使你已經經過 破壞,可以至少 在縮小窗口 你是脆弱的。 

好吧,什麼問題 對這些東西至今? 今天是讓所有的 你的偏執確認或否認。 這主要是證實了,可悲的。 是嗎? 

聽眾:[聽不清]手機, 如果你的手機休息, 然後它總是 很難verify-- 

DAVID J.馬蘭:真。 

聽眾:或者,如果你在一個不同的 國家,他們不會讓你 因為[聽不清]登錄。 DAVID J.馬蘭:當然可以。 所以這些是額外 你承擔的費用。 總是有這個主題 一個權衡,畢竟。 然後,如果你失去了你的電話, 如果它打破,如果你在國外, 或者你只是沒有 信號,如3G或LTE信​​號, 你可能不實際 能夠認證。 

如此反复,這兩個是權衡。 有時,它可以創建一個 很多結果為你工作。 但它實際上取決於,然後在 什麼樣的預期價格給你 什麼是幸福的 完全妥協。 

所以SSL,那麼,這種技術是 大家普遍認為理所當然 或者假設是存在的,儘管 這顯然不是這樣。 你仍然可以誤導 人,不過,即使是與此有關。 所以這裡有一個銀行的例子。 

這是美國銀行。 有一大堆的這些 在哈佛廣場和超越。 並請注意,在極頂 在屏幕上,有一個,事實上,HTTPS。 它甚至綠色 並強調我們 以表明這的確是 一個合法的安全網站, 還是讓我們被訓練相信。 

現在,除此之外,雖然 注意到,如果我們放大, 有這個東西在這裡,在這裡 系統會提示您登錄。 這是什麼意思掛鎖權 在那裡,旁邊,我的用戶名提示? 這是在網站上很常見了。 這是什麼鎖是什麼意思? 你看起來像你知道的。 

聽眾:它並不意味著什麼。 

DAVID J.馬蘭:這 並不意味著什麼。 這意味著,美國銀行知道如何 寫的HTML圖像標籤,對不對? 這確實沒什麼意思,因為即使 我們,使用我們看的第一天 在HTML中,可以編寫了一個頁面 紅色背景和圖像, 如GIF或諸如此類的東西,這 恰巧看起來像一個掛鎖。 然而,這是超 在網站上常見的, 因為我們已經被訓練的假設 是,呵呵,掛鎖意味著安全, 當它真的只是意味著你了解HTML。 

例如,早在一天,我可以 剛剛把這個放在我的網站, 聲稱它是安全的, 並要求,有效地, 為人們的用戶名和密碼。 所以,看在網址為 至少有一個更好的線索, 因為這是內置到Chrome瀏覽器 或其他瀏覽器,您正在使用。 但即便如此,有時 事情都可能出錯。 而事實上,你可能不總是 看HTTPS,更不用說為綠色。 

有什麼你永遠 看到這樣的畫面? 你可能有,實際上, 此前在十月 當我忘了支付我們 SSL證書,因為它叫, 我們正在尋找像 此為一兩個小時。 所以,你可能已經看到的東西 像這樣,用刪除線, 像紅色線,通過 在URL中的協議 或某種畫面的那 至少你誡勉 對於試圖進一步進行。 而谷歌在此邀請 你回去的安全。 

現在,在這種情況下,這僅僅意味著 我們採用了SSL證書, 大,數學有用的電話號碼 了與CS50的服務器相關聯, 不再有效。 而事實上,我們可以模擬 這一點,因為你可以在你的筆記本電腦。 如果我進入Chrome瀏覽器在這裡, 讓我們去facebook.com, 它看起來像這樣是安全的。 但現在讓我繼續前進, 這裡的掛鎖點擊。 

並讓我去連接, 證書信息。 而事實上,你會 在這裡看到的是一堆 關於低級別的細節 誰facebook.com確實是。 看來,他們已經支付的錢 一家名為也許DigiCert高 保證已經承諾 告訴世界其他地區 即,如果一個瀏覽器有史以來看到 一個certificate--你能想到的 它字面上的證書 看起來在頂部的俗氣的事 left--那麼facebook.com是誰他們說 是這樣,因為這麼長的時間,當 你訪問一個網站,像 cs50.harvard.edu或facebook.com 或gmail.com使用HTTPS 網址,幕後, 有這種交易 自動發生 對你來說,即 facebook.com,在這種情況下, 發送到瀏覽器的 所謂的SSL證書,或者更確切地說, 它的公鑰, 然後你的瀏覽器 使用公鑰 隨後發送加密 業務到和從它。 

但有這個整體的層次結構 在公司的世界 你付錢給誰都會 然後證明,在數字意義上說, 你確實是facebook.com或 您的服務器確實是cs50.harvard.edu。 並內置了瀏覽器,如 Chrome和IE瀏覽器和Firefox, 是所有這些的列表 所謂的證書頒發機構 被授權 微軟與谷歌和Mozilla 確認或否認 facebook.com是誰也說是真的。 但美中不足的是, 這些東西都過期。 事實上,Facebook的樣子 到期明年十月,2015年。 

所以,我們實際上可以模仿,如果我這個 走在我的Mac到我的系統偏好設置, 我進入的日期和時間, 我進入日期和時間在這裡, 我解開這個這裡 - 幸運的是, 我們並沒有透露密碼,這個時間 -  現在我去取消選中此。 讓我們actually--哎呀,這是 不一樣有趣的事情了。 我們是字面上的未來,現在, 這意味著這是2020年是怎樣的。 如果我現在重新加載page-- 讓我們做它Ingognito mode-- 如果我刷新頁面,我們走吧。 

所以,現在,我認為電腦 這是2020年的,但我的瀏覽器 知道這個證書 Facebook的到期,當然,在2015年。 因此,它給我這個紅的消息。 現在,幸運的是,瀏覽器 像Chrome瀏覽器反倒 使得它相當困難的 儘管如此進行。 他們確實想要我 回到安全。 

如果我點擊這裡前進,它的 要告訴我一些更多的細節。 如果我真的想 繼續,他們會告訴 我去facebook.com,這一點, 再次,不安全的,在該點 我去看看Facebook的網頁,類似這樣的。 但是其他的東西 似乎是斷裂。 什麼是可能打破這一點? 聽眾:JavaScript的。 DAVID J.馬蘭:像 Java腳本和/或CSS 文件也同樣 遇到這個錯誤。 所以這只是一個糟糕的大局。 但這裡的問題是,至少有 Facebook的確實啟用了SSL 為他們的服務器,因為許多網站, 這樣做,但不必是所有。 

但是,這不是一個人在這裡的外賣。 事實證明,即使是SSL 已證實 是不安全的某種方式。 之類的,所以我暗示,SSL,不錯。 尋找HTTPS URL和生活 好,因為你所有的HTTP流量 和標頭和內容被加密。 

沒有人能在攔截 中間,除了所謂的人 在中間。 這是一種通用的技術 在安全名揚四海 作為一個中間人攻擊。 假設你是這個小 筆記本電腦在這裡在左邊, 並假設你想參觀 在右邊的服務器那邊, 就像facebook.com。 

但是假設在 你和Facebook之間, 是一大堆其他服務器和 設備,如交換機和路由器, DNS服務器,DHCP服務器,這 其中沒有我們控制。 它可能是由星巴克來控制 或者哈佛或康卡斯特等。 好吧,假設某人 惡意,在網絡上, 在你和Facebook之間, 能告訴你 ,你知道是什麼,IP地址 Facebook是不是你認為它是。 這是該IP代替。 

所以您的瀏覽器 被騙請求 從另一個交通 電腦完全。 好吧,假設電腦 簡單地看所有 交通的你從請求 Facebook和所有的網頁 你是從Facebook的要求。 和任何時間看到了你的流量 與HTTPS開頭的網址, 它動態地,在 飛,將其重寫為HTTP。 而且任何時候它看到的位置 頭,結腸的位置, 就像我們使用重定向 該用戶的那些,也 可這個男人的改變 從HTTPS中間HTTP。 

因此,即使你本人會 認為你是在真正的Facebook, 它不是很難的 對手有物理訪問 您的網絡簡單地 返回頁面你, 看起來像Gmail一樣,那 看起來像Facebook, 而事實上網址是 同樣的,因為他們是 假裝有相同的主機名 因為DNS的一些開採 或一些其它系統那樣。 和的結果,那麼,是 我們人類唯一可能 意識到這一點,OK,這看起來像 Gmail或至少是舊版本, 正如這張幻燈片從 舊的演示文稿。 但它看起來像this-- http://www.google.com。 

所以在這裡也一樣,現實 是,你們有多少人, 當你去到Facebook或Gmail或任何 網站,你知道一點 關於SSL,你們有多少人身體 輸入https://,然後網站 名稱,輸入。 我們中的大多數只需要輸入一樣,CS50, 按Enter鍵或F-A為Facebook 並按下回車鍵,讓它自動完成。 但在幕後,如果 你看你的HTTP流量, 有可能是一大堆 這些位置的頭 正在向您發送 Facebook上www.facebook.com 到https://www.facebook.com。 

所以這是一個或多個HTTP事務 在您的信息是完全 以明文方式傳輸,不 加密任何責任。 現在,這可能不是這麼大的 如果處理所有你想要做的 正在訪問的網頁,你不 發送您的用戶名和密碼。 但是,什麼是它的下面 引擎蓋,尤其是 對於基於PHP的網站也 被來回發送時 您訪問某些網頁,如果 該網站的用途,比如說,PHP 並實現像pset7功能? 什麼被送到了來回 在您的HTTP標頭給你 訪問這個美麗 有用的超全球在PHP? 

聽眾:餅乾。 

DAVID J.馬蘭:餅乾, 特別是PHP SESS ID的Cookie。 所以記得,如果我們去, 比方說,cs50.harvard.edu再次, 但是這一次,讓我們打開了 網絡選項卡,而現在,在這裡, 讓我們從字面上只是去 到http://cs50.harvard.edu 然後按Enter鍵。 再看看屏幕到這裡。 請注意,我們確實得到了 回301永久移動 消息,這意味著 有一個位置頭在這裡, 這是目前我重定向到HTTPS。 

但美中不足的是,如果我已經有了 用腳踩我的手幾乎一個cookie, 正如我們以前討論過,並 我對人類的那種在不知不覺中 只需訪問不安全 版本和我的瀏覽器需要它 在自身顯示為郵戳 第一請求,這是通過HTTP, 在中間的任何人,任何 對手在中間, 理論上可以只看到 這些HTTP頭,就 就像我們在看他們在這裡。 這是唯一的一次,你 說話的HTTPS 網址這是否郵戳本身得到 加密的,一拉或撒的V @ genere, 但與票友算法完全。 所以在這裡也一樣,即使 網站使用HTTPS, 我們人類已經習慣於,謝謝 自動完成等技術, 到別想 的潛在影響。 現在,有辦法解決這個。 例如,許多 網站可以被配置 這樣一來,一旦你有這一手 郵票,你可以告訴瀏覽器, 這個郵戳是唯一的 SSL連接。 瀏覽器不應該存在 它給我,除非它是通過SSL。 但很多網站 不打擾這一點。 和很多網站明顯 甚至不使用SSL打擾的。 

因此,對於更多的,有實際 在此演示文稿甚至更多的污垢 一個老鄉給的所謂的黑 帽大會在幾年前, 其中,甚至還有其他 惡意招數人都用過。 您可能還記得這個 一個圖標,對其中的概念 就像一個小的標誌,是 通常在瀏覽器的窗口中。 那麼,什麼是 壞人之間的共同點是 使看起來像什麼晶圓廠的圖標? 聽眾:[聽不清]。 DAVID J.馬蘭:再說一遍嗎? 聽眾:該網站。 DAVID J.馬蘭:不是一個網站。 所以,網站圖標,小小的圖標。 什麼是最 惡意操縱的事情 你可以讓你的網站的 默認的圖標是什麼樣子? 聽眾:綠色鎖。 DAVID J.馬蘭:那是什麼? 聽眾:一隻綠色的小鎖。 DAVID J.馬蘭:像 一個綠色的鎖,正好。 所以,你可以有這樣的審美 一隻綠色的小掛鎖, 暗示走向世界,哦,我們是 固定的時候,再次,所有這意味著 是,你知道一些HTML。 所以,會話劫持 指的正是這一點。 如果你有別人誰的種 在這裡嗅探電波在這個房間 或具有物理訪問 網絡,可以看到你的cookies, 他或她可以搶了 PHP SESS ID的Cookie。 然後,如果它們 足夠精明,知道 如何在發送的cookie作為自己 只是通過複製該值郵戳 和發送的HTTP標頭, 一個人可以很容易地 登錄到任何的Facebook 帳戶或Gmail帳戶 或Twitter帳戶在這裡,開 在房間裡,如果你不使用SSL 如果網站是 不使用SSL正確。 

因此,讓我們過渡到另一個。 所以另一個真實的故事。 而這恰恰打破了 一兩個星期前的新聞。 Verizon公司一直在做 一個很邪惡的事情, 而作為最優秀的人所知道的, 至少自2012年,由此, 當你通過Verizon的網站訪問 蜂窩電話,無論生產它是 他們一直振振有詞, 隨著故事的推移, 注入到所有的HTTP 交通自身的HTTP標頭。 而這頭看起來 像this-- X-UIDH。 UID就像是一個獨特的 標識符或用戶ID。 和X只是意味著這是一個自定義 頭,這不是標準的。 

但是,這是什麼意思 是的,如果我拉起來, 例如,任何網站 我的手機上這裡 -  而我使用Verizon公司作為我carrier-- 即使我的瀏覽器可能無法 要發送此HTTP 頭,Verizon公司,盡快 在信號到達其 手機塔的地方, 已經有一段時間這個注射 頭為我們所有的HTTP流量。 他們為什麼要這麼做呢? 想必跟踪的原因, 廣告的原因。 

但魯鈍的設計決策 這裡是一個HTTP頭, 因為你們知道,從pset6, 接收到任何網絡服務器 您所請求的流量。 所以,這一切的時候,如果 你已經訪問過 Facebook或Gmail或任何網站 不使用SSL的所有時間 -  而實際上,這些 2幸運的是,現在do-- 但其他網站 不使用SSL的時候, Verizon已經基本 被種植,強行, 所有的郵戳我們 手,即使我們看不到, 而是,端網站做。 因此它沒有被該 任何人都很難在互聯網上 運行一個Web服務器 意識到,哦,這是大衛, 或者,哦,這是達文,即使我們 關於嚴格清理我們的cookie, 因為它不是來自我們走來。 它是由運營商來了。 

他們查找您的電話號碼 然後說,哦,這是大衛。 讓我注入了獨特的標識符,以便 我們的廣告商或誰可以 追踪此。 所以,這其實是非常, 非常,非常糟糕,令人咋舌。 我會鼓勵你 一起來看看,例如, 在此URL,這是我應該放棄 其實,我嘗試這樣做今天早上。 我寫了一個小腳本, 把它在這個網址, 參觀它與我自己的Verizon 轉彎的Wi-Fi關閉後手機。 所以,你必須關閉Wi-Fi關閉,使 你使用3G或LTE等。 然後,如果你訪問 此URL,這一切的腳本 不為你們,如果 你想打, 是它吐出來的HTTP報頭 您的手機發送到我們的服務器。 實際上我在公平,做 沒有看到這個今天上午,這 讓我覺得要么在本地 手機塔我連接到 或者諸如此類的東西沒有做,或者他們已經 支持暫時關閉這樣做的。 但對於更多信息, 要前往該網址在這裡。 

現在到了this--這 漫畫可能是有意義的。 不是嗎? 行。 行。 那死了。 行。 

因此,讓我們來看看幾個比較 攻擊,如果只是為了提高知名度 再提供一對夫婦 可能的解決方案 讓你更加留心。 這一次我們談到了其他的 天,但沒有給它提供一個名稱。 這是一個跨站點請求偽造,這 是說過分花哨的方式 你欺騙用戶點擊 像這樣的URL,這其中的技巧 成一些行為 他們並沒有打算。 

在這種情況下,這似乎 是為了要欺騙我 為賣我的股份的谷歌。 這將成功的話 我pset7的程序員, 有沒有做過什麼? 或者更確切地說,更一般地,在什麼 案例我是容易受到攻擊 如果有人招數其他用戶 點擊進入這樣的網址是什麼? 是嗎? 

聽眾:你不辨 與GET和POST。 

DAVID J.馬蘭:好。 如果我們不區分 GET和POST之間, 而事實上,如果我們允許 GET賣東西, 我們邀請這類攻擊。 但是,我們仍然可以有所緩解了。 我說:我認為, 上週,亞馬遜至少 試圖用技術減輕這種 這是非常簡單的。 會是什麼明智之舉 這樣做是你的服務器上, 而不是只一味地賣 任何符號,用戶類型? 聽眾:各種各樣的確認? DAVID J.馬蘭:確認畫面, 一些涉及人​​機交互 讓我不得不 做出主觀判斷, 即使我天真地點擊 看起來像這樣一個鏈接 帶我到細胞屏幕,在 至少讓我證實或否認。 但並不是一種罕見的攻擊,尤其是 在所謂的網絡釣魚或垃圾郵件一樣 攻擊。 

現在,這一個是多了幾分含蓄。 這是一個跨站點腳本攻擊。 而出現這種情況,如果你的 網站不使用 用htmlspecialchars的等價物。 並且它以用戶輸入的,只是 盲目地將其注入到一個網頁, 與打印或迴聲,with-- again--調用出來的東西 喜歡用htmlspecialchars。 

因此,假設在網站上 問題是vulnerable.com。 並假設它接受 一個叫Q參數。 看看會發生什麼 如果我真的,壞傢伙, 鍵入或欺騙用戶 參觀看起來像this--網址 Q =開放的腳本標籤,關閉腳本標記。 又一次,我假設 這vulnerable.com不 要開啟危險 像開括號字符 成HTML實體中, 符號,L-T,分號的事 你可能已經看到過。 

但是,什麼是腳本 或JavaScript代碼 我試圖欺騙 用戶進入執行? 好吧,指的document.location 我的瀏覽器的當前地址。 所以,如果我做的document.location =, 這讓我重定向用戶 在JavaScript中到另一個網站。 這就像我們的PHP函數 重定向,但是在JavaScript中完成的。 

我在哪裡要發送的用戶? 那麼,顯然,badguy.com/log.php, 這是一些腳本,顯然, 壞人寫的,這需要 一個名為cookie的參數。 

和通知,我該怎麼 似乎是串聯 上了等號結束了嗎? 嗯,這東西 說的document.cookie。 我們還沒有談到這一點。 但事實證明,在 JavaScript中,就像在PHP中, 您可以訪問所有的cookies 您的瀏覽器實際使用。 

所以這一塊的效果 行的代碼,如果用戶 被誘騙點擊此鏈接 與網站vulnerable.com不 與用htmlspecialchars轉義, 就是你剛才有效 上傳到log.php所有的餅乾。 而這並不總是那麼有問題的, 除非其中的一個餅乾 是你的會話ID,您 所謂的郵戳,該 指badguy.com可以讓他或她自己 的HTTP請求,發送該同一手 郵票,同樣的餅乾頭, 並登錄到任何網站 你來訪,這在 這種情況下是vulnerable.com。 這是一個跨站點腳本 攻擊感 那種認為你欺騙 一個網站到算命 一些信息其他網站 它不應該,事實上,有機會獲得。 

好了,準備好一 其他令人擔憂的細節? 好吧,這個世界是一個 可怕的地方,所以合法。 下面是一個簡單的 JavaScript的例子是 在今天的源代碼 叫地理位置0和1。 還有一對夫婦 這次網上演練。 

而且它的下面,如果我 在Chrome瀏覽器中打開此網頁。 它首先不執行任何操作。 OK,我們將再次嘗試此。 呵呵。 不,它應該做的事情。 OK,袖手旁觀。 

讓我們來試試這一次。 [聽不清] 嗯,好吧,不知道為什麼 the--哦,家電 可能丟失網絡連接 訪問由於某種原因。 好吧,那麼發生在我身上了。 

好吧,這樣的通知 什麼是怎麼回事。 這個神秘的前瞻性URL,這 是CS50的服務器只有一個, 想用我的電腦 位置,就像物理上它的意思。 而事實上,如果我點擊 讓,讓我們看看會發生什麼。 很顯然,這是我當前的緯度 縱坐標向下 一個相當不錯的解決方案。 

所以,我怎麼會在這得到什麼? 請問這個網站,像CS50服務器, 知道身體在世界何處 我,更別說與精度。 好吧,原來out--就讓我們 看網頁的source-- 在這裡是一堆HTML的 首先有this--底部 身體的onload =“定位”那些 -  只是一個功能,我寫。 

而我說,裝上 頁面,調用物理定位。 再沒有什麼 在體內,因為 在頁的頭部, 注意我這裡有。 這是我的大地定位功能。 而這僅僅是一些錯誤checking-- 如果navigator.geolocation的類型 是不是不確定的。 因此,JavaScript有這 機制,在那裡你 可以說,什麼是 這個變量的類型? 如果它沒有undefined-- 這意味著它是一些value-- 我要打電話 navigator.geolocation.getCurrentPosition 然後回調。 

這是什麼? 所以在一般情況下,什麼是一 回調,只是要清楚嗎? 你可能曾經遇到過 這已經pset8。 回調是一個通用的 術語做什麼的? 只是覺得我今天一樣。 聽眾:[聽不清]。 DAVID J.馬蘭:沒錯, 一個函數,它應該 被稱為只有當我們擁有的數據。 這個調用瀏覽器,讓我當前 位置,可能需要一毫秒, 這可能需要一分鐘。 這句話的意思是,我們都在講 的get getCurrentPosition方法, 調用這個回調函數, 我從字面上命名回調 為簡單起見,這 顯然這是一個在這裡。 

和getCurrentPosition的工作方式, 簡單地通過讀取文檔 對於一些JavaScript代碼在網上,是 它調用了所謂的回調 功能,通過它進入 它的JavaScript對象, 其內部是.coords.latitude 和.coords.longitude, 這是究竟如何,那麼, 當我重新加載該頁面, 我能看到我的位置在這裡。 現在,至少有一個防守位置。 在我訪問過這個頁面, 當實際工作, 是我至少會提示什麼? 

聽眾:[聽不清]。 

DAVID J.馬蘭:是或no--做 要允許或拒絕呢? 不過想想也對習慣 你們可能已經通過, 無論您的手機和您的瀏覽器。 我們很多人,我自己 包括,可能 漂亮的傾向,這些days--你 看到一個彈出窗口,只需輸入,確認,批准, 允許。 而且越來越多,你可以把 自己在危險的原因。 

所以,事實上,有這種奇妙的bug 幾年ago--或缺乏feature-- 該iTunes的有幾年前, 因此,如果你有一部手機, 它是一個iPhone, 你離開你的家 因此,在世界各地旅行 或附近,這麼長的時間, 你的手機登錄 在這裡你都可以通過GPS。 這實際上是透露, 種人們現在期待這一點。 你的手機知道你在哪裡。 但問題是, 當你備份 你的手機iTunes--這是前 iCloud中的天,這是為了更好的 或為worse--數據被存儲 在iTunes中,完全未加密。 所以,如果你有家人或室友 或者惡意的鄰居是誰的 好奇字面上每個GPS 協調你曾經去過, 他或她可以只 坐下來,在iTunes中,運行 一些軟件,是自由 可用,製作地圖是這樣的。 

其實,這就是我 製作我自己的手機。 我插了。 它看起來像,基於 藍色圓點在那裡, 這就是大多數 GPS坐標分別為 通過登錄iTunes的我 在東北那裡。 但我顯然走遍 了一下,即使是在美國馬薩諸塞州。 

所以這是波士頓港 就在那裡。 這是一種劍橋大學和 波士頓,在那裡它是最黑暗的。 偶爾,我會跑 跑腿到更大的地域。 

但iTunes的,多年來,曾作為最好的 我看得出來,所有這些數據在我身上。 你可以告訴, 那年,我竟是 走了很多波士頓之間 和紐約,來回 和來回。 事實上,這是我對美鐵,回 回回,反反复复,相當多的。 所有這一切都被被記錄和 加密存儲在我的電腦 對於任何人誰可能有 進入我的電腦。 

這是令人擔憂的。 我不知道為什麼我是 在賓夕法尼亞州,或為什麼 我的手機是在賓夕法尼亞州, 顯然相當密集。 然後,終於,我看著 我克卡,而且,哦,我 參觀CMU,卡內基 梅隆大學的時候。 並表示不快,那種 解釋說,曇花一現。 然後,如果你放大 了進一步的,可以 見我訪問舊金山 一次或多次,然後, 我甚至有一個短暫停留了什麼 我認為這是拉斯維加斯,在那裡。 所以this--的一切只是一個 臨時滯留在機場。 

聽眾:[笑] 

因此,這是唯一地說,這些 的問題,說實話,是無處不在的。 它只是感覺 越來越喜歡有 更多的這種多被披露, 這可能是一件好事。 我敢說,世界上沒有 越來越差的刻錄軟件。 我們正在變得越來越好, 希望,在注意到 多麼糟糕某些軟件 就是我們使用。 而幸運的是,一些 公司正開始 舉行這個責任。 

但是,什麼樣的防禦 你可以有什麼想法? 因此,除了密碼管理器,像 的1Password和LastPass的和其他人, 除了剛剛更改您的密碼 並想出隨機的人 使用軟件,如 這一點,你也可以嘗試 盡你所能來加密 所有的流量 到至少縮小的威脅的區域。 因此,例如,哈佛大學附屬公司, 你可以都去vpn.harvard.edu 並與哈佛的ID和密碼登錄。 這將建立一個安全的 你和哈佛大學之間的連接。 

現在,這不 一定保護你 對那些之間的任何威脅 哈佛和Facebook或哈佛 和Gmail。 但是,如果你坐在 在機場或你 坐在星巴克或者你 坐在朋友的地方, 而你真的不相信他們或他們的 他們家的路由器的配置, 至少你可以建立 安全連接 以這樣的地方,是一個實體 可能會更好一點保障 不是有點像 星巴克等。 而這樣做是什麼 它建立,再次 你和端點之間的加密。 

更炫的這樣的事情。 所以,有些人可能已經 熟悉的Tor, 這是這種匿名的 網絡,其中很多人, 如果運行該軟件,路徑 隨後他們的互聯網 通過互相通信。 所以,在最短的點 不再A和B之間 但也可能是遍布 到位,使你根本 涵蓋了人的跟踪和離開 少一個記錄,以在您的HTTP 流量從何而來,因為它會 通過一大堆別人的 筆記本電腦或台式機, 是好還是壞。 

但是,即使這不是一個萬無一失的事情。 你們當中有些人可能還記得,去年 炸彈恐嚇事件被稱為英寸 它最終被追查到 用戶誰曾在這裡使用這個網絡。 與追趕那裡,我記得是, 如果沒有那麼多其他人 使用這樣或軟件 使用此端口和協議, 它不是很難的網絡連 找出誰,以一定概率, 事實上是匿名 他或她的通信。 

我不知道這些人的 實際的細節問題。 但可以肯定,實現了無一 這些是萬無一失的解決方案,以及。 而今天在這裡的目標是至少 讓你思考這些事情 而未來與技巧 保衛自己免受他們。 所有的威脅有任何疑問 等待著你在那裡,並在這裡? 是嗎? 聽眾:如何安全的做 我們預計平均 [?網站是,?]喜歡 平均CS50項目? 

DAVID J.馬蘭:本 平均CS50項目? 它總是證明,每年的 一些CS50最終項目不 特別是安全的。 通常情況下,它的一些室友或 hallmate的數字了這一點 通過發送請求到您的項目。 

總之answer--多少 網站是安全的? 我撿今天異常。 就像這只是偶然事件 我意識到,這個網站 我已經訂購這些坦然 美味的安排from-- 我不相信我會 停止使用他們的網站; 我可能只是改變我 密碼更regularly-- 目前還不清楚到底有 弱勢所有這些various-- 這是巧克力覆蓋的實際。 簡短的回答,我不能回答這個問題 有效的,只是說這 不是說我很難 發現其中的一些例子,只是 為了討論在演講的緣故。 而只是保持在眼睛上 谷歌新聞和其他資源 將帶來更 這些事情點亮。 

好吧,讓我們來總結 這個前傳 該CS50的團隊已經為你準備 在預期CS50黑客馬拉松的。 和你的出路在 此刻,水果會送達。 [視頻回放] [MUSIC菲姬,Q提示和GOONROCK,“A 小小的宴會不會導致死亡NOBODY(ALL WE GOT)“] 

 -  [打鼾] [完視頻回放] DAVID J.馬蘭:這就是它的CS50。 我們會看到你在週三。 [MUSIC  - 史奇雷克斯,“IMMA”實戰“]