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-- 你想加入尼克在这里 吃午饭,像往常一样,这 周五,前往该网址在这里。 此外,如果你想 加盟尼克或本尼克 或本佳佳或任何 对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的样子 到期明年10月,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年,由此, 当你通过Veri​​zon的网站访问 蜂窝电话,无论生产它是 他们一直振振有词, 随着故事的推移, 注入到所有的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”实战“]