>> DAVID J. MALAN: Dies ist CS50, und dies ist der Beginn der 10. Woche.
Sie erinnern sich vielleicht, dass wir gezeigt haben auf dem Bildschirm ein 3D-Drucker, die
ist diesem Gerät, nimmt Spulen aus Kunststoff
und dann extrudiert es durch Erhitzen und Schmelzen, so dass wir dann
Armee von Changs bilden Elefanten, zum Beispiel.
>> So zumin Leverett House, aber vor kurzem I
wurde mit einem im Chat Ihre Klassenkameraden und ein Freund von Changs
namens Michelle, die tatsächlich im interniert dieses andere Unternehmen im vergangenen Jahr, dass
eine andere Technik für die tatsächlich Erstellung von dreidimensionalen Objekten,
wie diese winzigen Elefanten hier.
Insbesondere die Art und Weise dies funktioniert ist, dass es ein Beispiel für etwas
genannt Stereolithographie, wobei es gibt diese Becken aus Harz oder flüssig,
und dann ein Laser fällt auf, dass Flüssigkeit nach und nach, wobei die Vorrichtung
Aufzüge, Lifte und hebt das Ding dass Sie drucken, wie ein Elefant,
wie die Flüssigkeit wird fest.
Und das Ergebnis, eigentlich ist etwas, das ist
wesentlich robuster als einige der Kunststoff Werbegeschenke einige von euch
gehabt haben könnte.
>> Und was Chang kindly für uns getan hat war hier
habe ein Zeitraffer-Verwendung von Fotos im Verlauf von einer Stunde oder mehr,
wahrscheinlich, um diesen Kerl hier zu produzieren.
Würde jemand, der noch nie vor gekommen gerne kommen getroffen starten zu diesem Video?
Lassen Sie mich mit zu gehen, wie wäre es.
Komm auf.
In Ordnung.
Und Sie sind?
Luke: Ich heiße Lukas [unverständlich].
DAVID J. MALAN: Hallo, Luke.
Freut mich, dich kennenzulernen.
>> LUKE: Nice to meet you.
PUBLIKUM: Er ist für UC läuft.
>> DAVID J. MALAN: Ich weiß, wir versuchen nicht zu fördern.
Alles klar, so Lukas, alle Sie hier in CS50 tun haben
wird die Leertaste schlagen um diese Elefanten zu drucken.
[VIDEO PLAYBACK]
- [MACHINE Surren]
- [CRASH]
- [BOOM]
- [CRASH]
[END VIDEO PLAYBACK]
DAVID J. MALAN: Also das ist genau das, wie es ist, um Druck 3D.
Und hier ist Ihre Elefanten.
Vielen Dank für Freiwilligenarbeit.
In Ordnung.
Also noch einmal, gemäß der Spezifikation für Das endgültige Projekt, diese Hardware, die ist
Ihnen zur Verfügung Jungs ist, aus irgendeinem Grund,
Ihr Projekt hat einige Kreuzung von Software und Hardware,
erkennen, dass diese nun Ressourcen.
>> Ich wollte einen Moment Zeit nehmen, um zu berühren auf einem purpurnen Artikel, die herauskamen
spät in der Nacht, das war bekannt, dass diese Kolleginnen hier, David
Johnson, der seit der Senior ist Lehrer für Ec 10 seit geraumer Zeit,
verlässt Harvard an die Ende des akademischen Jahres.
Und ich wollte nur einen Moment Zeit nehmen, ehrlich gesagt,
David vor CS50 danken.
Er war ein Mentor Arten, uns im Laufe der Jahre.
>> Und ich fühle mich wie wir, CS50, haben eher mit Ec 10 gewachsen
hier, denn sie sind direkt vor uns.
Und er und das ganze Team in Ec 10 gewesen wunderbar gnädig, ehrlich gesagt,
wie wir schleppen in allen unseren Anlagen jede Woche, und vor Jahren,
vorgesehen viel Of Counsel, wie wir waren
neugierig, wie sie funktionieren EC 10.
Also Dank und Bewunderung an David Johnson.
>> [Applaus]
>> Nun unrelatedly, so das Ende ist in der Tat in der Nähe.
Wir sind hier in der 10. Woche.
Und wir haben gerade erst ein paar formale Wochen
hier in der Klasse verließ, gefolgt durch ein Paar von Ereignissen.
Also, um Ihnen ein Gefühl von dem, was geben am Horizont, hier sind wir heute.
>> An diesem Mittwoch, Rückruf, wir einen Gastvortrag haben
von niemand anderem als Microsofts eigene Steve Ballmer.
Wenn Sie auch noch nicht gegangen cs50.harvard.edu/register,
tun dies, da der Platz ist begrenzt.
Und sie werden überprüft IDs an der Tür an diesem Tag.
Wenn Sie nicht hier waren letzte Woche, dachte ich, ich würde
necken Sie mit einem anderen Blick bei Steve und die Aufregung, die
erwartet uns am Mittwoch.
>> [VIDEO PLAYBACK]
>> -Passion.
>> -Wir Gehen zu hardcore-- hardcore sein.
>> -Innovator.
>> -Bill Heißt, Sie nicht bekommen.
Wir werden eine Put Computer auf jedem Schreibtisch
und in jedem Haus, das wurde das Motto für das Unternehmen.
Ich schwöre, Bill erfunden in dieser Nacht zu mir wirklich geben
etwas von der Vision warum sollte ich sagen, ja.
Ich habe es nie bereut, wirklich, danach.
>> -Frisches Aus der Schule, er trat eine junge Startup
und half sie in einer von Amerikas wachsen erfolgreichsten Unternehmen aller Zeiten.
Das Leben und Business Lehren auf dem Weg
ließ ihn zurück zu seinem Kindheit Leidenschaft und Liebe.
Und diese Erfahrungen haben vorbereitet ihm für seine nächste Herausforderung im Leben.
>> -Nichts Bekommt in unserem way-- Boom!
Keep Coming hardcore!
Gehe Clippers!
>> -Dies Ist Steve Ballmer, "In meinen eigenen Worten."
[END VIDEO PLAYBACK]
DAVID J. MALAN: --Dieser Mittwoch bis CS50.
Kopf wieder auf diese URL hier.
Als für das, was sonst noch auf dem Horizont, nächste Woche, kein Vortrag am Montag.
Aber wir werden folgen, dass von Quiz ein am Mittwoch.
Zur Homepage CS50 für Details auf Personen, Orte und Zeiten
für alle der verschiedenen proctoring Logistik und dergleichen,
sowie über Kritik Sitzungen, die bevorstehenden sind.
Und dann, endlich, am Montag, dem Tag vor der Thanksgiving-Woche Pause
erkennen, es wird unsere letzte Vorlesung sein.
Wir werden Kuchen und eine große dienen viel Aufregung, hoffen wir.
>> Jetzt, ein paar andere Updates.
Denken Sie daran, dass der Status Bericht, der wirklich nur ist
bedeutet, um eine beiläufige Interaktion mit TF stolz gerechten Staat
wie weit zusammen mit Ihrem Abschlussprojekt Sie sind,
oder zumindest als Sanity überprüfen Sie, ob Sie sollten
nähern, dass Punkt kurz danach.
Dann wird der Hackathon folgt, dass.
Erkenne den Hackathon ist keine Gelegenheit
zu Ihrem endgültigen Projekt zu starten, aber soll eine Gelegenheit
in der Mitte der oder in Richtung auf sein das Ende Ihrer Abschlussprojekt,
mit der Umsetzung durch ein paar Tage später von der CS50 Messe gefolgt.
>> Nun CS50 Produktion Team, vor ein paar Jahren,
zusammen ein Teaser für den CS50 fair, dass wir
dachten, wir würden Sie heute zeigen, denn sie haben hart daran gearbeitet,
auf einem Prequel für das, ein neues Video dass wir heute mit dem Schluss.
Aber hier ist, was Sie erwartet für die diesjährige CS50 fair.
[VIDEO PLAYBACK]
- [HANDY RINGING]
[MUSIC "Theme from Mission: Impossible"]
[END VIDEO PLAYBACK]
DAVID J. MALAN: Also das ist genau, wie wir schließen endgültige Projekteinreichungen.
Ein paar jetzt teasers-- wenn Sie möchten, dass Nick hier beitreten
zum Mittagessen, wie üblich, diese Freitag, den Kopf auf diese URL hier.
Außerdem, wenn Sie möchten, Nick oder diesen Nick beitreten
oder diese Allison oder jede Mitglieder des CS50-Team,
Sie erkennen, dass, kurz nach Begriff ende,
CS50 bereits rekrutieren für das nächste Jahr das Team,
für CAs, TFs, Designern, Produzenten, Forscher und andere Stellungen
dass hier betreiben CS50 sowohl in vor und hinter den Kulissen.
Also, wenn dies von Interesse sein könnten an Sie, den Kopf auf diese URL hier.
Und Studenten komfortabler, weniger komfortabel, und irgendwo in
zwischen gleichermaßen sind alle herzlich willkommen und zur Bewerbung aufgefordert.
>> So war es ein perfektes Timing, dass kein Witz, an diesem Morgen, als ich aufwachte,
Ich hatte diese hier Spam in meinem Posteingang.
Tatsächlich rutschte durch Google Mail-Spam-Filter
irgendwie und landete in meinem eigentlichen Posteingang.
Und er sagt: "Lieber Postfach Benutzer, Sie sind derzeit
Upgrade auf 4 Gigabyte Speicherplatz.
Bitte in Ihrem Konto anmelden um E-Raum zu validieren. "
>> Und dann gibt es diese schönen blauen verlockenden Link dort klicken Sie auf
für Dozenten und Mitarbeiter, die dann führte mich zu einem wunderbar legitime Seite, die
bat mich, meinen Namen zu geben und E-Mail-Adresse und, natürlich,
Kennwort bestätigen wer ich bin und so weiter.
Aber natürlich, wie es immer der Fall ist, Sie kommen zu dieser Zielseite,
und natürlich gibt es mindestens ein Tippfehler,
die an der Nagel in sein scheint der Sarg von einer dieser Betrügereien.
Und wir veröffentlichen, vielleicht, eine andere Links zu diesen Arten von Screenshots
in der Zukunft.
Aber hoffentlich, die meisten Menschen in dieser Raum nicht clicked--
oder auch wenn Sie geklickt haben solche Links, da dies,
nicht so weit, gegangen füllen Sie diese Formulare und so weiter.
In der Tat ist es in Ordnung, wenn Sie haben.
Wir werden versuchen, dass heute zu beheben, weil, Tatsächlich ist die heutige Gespräch
um die Sicherheit.
>> Und in der Tat, einer der Ziele der CS50 ist nicht
so viel zu CE lehren oder PHP oder JavaScript oder SQL
oder einer dieser zugrunde liegenden Implementierungsdetails.
Aber es ist, Sie als Menschen befähigen nur intelligentere Entscheidungen zu treffen, wie es
bezieht sich auf Technik bis die Straße, so dass, ob Sie
Ingenieur oder humanistischen oder Wissenschaftler oder andere Rolle,
Sie fundierte Entscheidungen über Ihre eigenen Computing-Nutzung,
oder wenn Sie in einem sind Entscheidungsposition,
in der Politik, insbesondere du machst viel,
viel bessere Entscheidungen als ein Viele Menschen heute haben.
Und wir werden dies tun, indem Sie anhand einiger Beispiele.
>> Zuerst war ich ziemlich überrascht vor kurzem auf die folgende entdecken.
So Passwörter natürlich sind das, was die meisten von uns
nutzen, um unsere data-- Email zu schützen, Chat, und alle Arten von Ressourcen wie die.
Und nur durch eine awkward-- nicht zeigen Hände, aber peinlich Blicke der Scham,
wie viele von euch das gleiche Kennwort verwenden in einer Menge von verschiedenen Websites?
>> Oh, OK, so dass wir die Hände zu tun.
OK, so viel Sie zu tun.
Wer dies tut, nur warum?
Und was?
Ja?
PUBLIKUM: Es ist leicht zu merken, denn Sie müssen nicht zu erinnern, [unverständlich].
DAVID J. MALAN: Ja, es ist leicht zu merken.
Es ist eine durchaus vernünftige, rationales Verhalten,
auch wenn das Risiko Sie setzen sich selbst
bei in diesen Fällen ist nur eine oder mehrere dieser Websites
ist anfällig für Hacker oder unsicher oder Ihr Passwort ist nur
so verdammt erraten, jeder kann es herausfinden können.
Es ist nicht nur ein Konto beeinträchtigt, aber in der Theorie irgendeine
Konten, die Sie auf dem Internet haben.
Also ich weiß, ich könnte heute sagen, nicht verwenden überall das gleiche Passwort,
aber das ist viel einfacher gesagt als getan.
Aber es gibt Techniken mildernde dass ein besonderes Anliegen.
>> Nun geschieht I, zum Beispiel, um benutze ein Programm namens 1Password.
Ein weiteres beliebtes eine heißt Lastpass.
Und ein Haufen CS50 Mitarbeiter verwenden ein oder mehr dieser Arten von Werkzeugen.
Und lange Geschichte kurz, ein Imbiss für heute
sein sollte, ja, haben Sie vielleicht dasselbe Passwort überall,
aber es ist sehr einfach, nicht mehr tun.
Zum Beispiel, in diesen Tagen, ich weiß vielleicht einer meiner Dutzende oder Hunderte
von Passwörtern.
Alle meine anderen Passwörter sind pseudo-zufällig
von einem dieser Programme hier erzeugt.
Und auf den Punkt gebracht, und sogar obwohl die meisten dieser Programme
neigen dazu, mit ein bisschen einem Preis zu kommen, Sie wäre ein Programm wie dieses zu installieren,
Sie würde dann speichern alle Ihren Benutzernamen und Passwörter
innerhalb dieses Programms auf Ihren eigenen Mac oder PC oder Dingsbums,
und dann wäre es auf Ihrem Computer verschlüsselt
mit dem, was hoffentlich ein besonders lange vergessen.
So habe ich eine ganze Reihe von Passwörter für einzelne Websites,
und dann habe ich ein wirklich lange vergessen, dass ich
verwenden, um alle freizuschalten die anderen Passwörter.
Und was ist schön zu Software wie diese ist
dass, wenn Sie eine Website besuchen, das ist bitten Sie Ihren Benutzernamen und Ihr Passwort ein,
in diesen Tagen, ich weiß nicht geben meinem Benutzernamen und Passwort,
weil wieder, ich weiß nicht einmal, was die meisten meiner Passwörter sind.
Ich schlug statt einer Tastatur Verknüpfung, wobei das Ergebnis davon
ist diese Software zu triggern veranlassen mich für mein Master-Passwort.
Ich tippe dann so zu einem großen Passwort und dann der Browser
füllt automatisch was mein Passwort ist.
Also wirklich, wenn Sie nichts anderes zu nehmen von heute in Bezug auf Passwörter,
das sind Software, die es wert sind Herunterladen oder die Investition in so
dass Sie mindestens Pause dass insbesondere Gewohnheit.
Und wenn Sie die Art sind, das ist mit Post-It Notes oder like--
und Chancen sind, zumindest einer von euch ist-- diese Gewohnheit auch genügt es zu sagen,
sollte gebrochen werden.
>> Nun, war ich zufällig zu entdecken, als Ergebnis der Benutzung der Software, die folgende.
Ich war die Bestellung eines Essbare Arrangement, Dieser Korb von Obst, vor kurzem.
Und ich traf meine spezielle Tastatur Abkürzung für die Anmeldung bei der Website.
Und die Software ausgelöst a Pop-up, die besagten, sind Sie sicher
du, dass ich automatisch möchten so reichen Sie Benutzernamen und Passwort?
Da die Verbindung ist unsicher.
>> Die Verbindung ist nicht Verwendung von HTTPS für eine sichere,
mit Hilfe dieses Protokolls als bekannt SSL, Secure Sockets Layer.
Und in der Tat, wenn man sich freuen oben links auf dieser Website,
es ist nur www.ediblearrangements.com, kein HTTPS, was nicht so gut ist.
>> Nun, ich war curious-- vielleicht ist nur ein Fehler in der Software.
Sicherlich, einige Website wie dies, dass viele von uns kennen
mindestens Verschlüsselung oder HTTPS-URLs, um Sie eingeloggt sein.
Also habe ich ein wenig neugierig an diesem Morgen.
Und ich habe mal meine CS50 Fähigkeiten, Ich öffnete Chrome Inspector.
Es ist nicht einmal viel von einer Fähigkeit.
Es ist einfach auf die richtige Tastatur Verknüpfung zu diesem eröffnen.
Und hier ist ein großes Fenster von Chrome Inspector.
>> Aber was ist eigentlich eine war wenig tragisch und lächerlich
waren diese beiden Zeilen hier.
Bis an der Spitze, bemerken die URL zu die mein Benutzername und Passwort
wurden eingereicht.
Lassen Sie mich zu vergrößern.
Es war dieses hier.
Und all das ist Art uninteressant,
außer dem, was ganz am Die Linke, die mit http: // beginnt.
Und so ist, dann, OK, vielleicht sie sind nur Senden
meinem Benutzernamen, das ist nicht so eine große Sache.
Vielleicht mein Passwort wird später gesendet.
Das wäre eine Art sein interessante Design-Entscheidung.
>> Aber nein.
Wenn Sie dann auf Antrag aussehen Nutzlast, der Benutzername und das Passwort
Ich sent-- und ich verspottet diese bis zur slide--
wurden tatsächlich im Klartext gesendet.
So können Sie sich auf diese besondere Webseite gehen und bestellen eine essbare Arrangement wie diese,
und zwar offenbar für all dies Mal, dass ich von ihnen Bestellung worden,
Ihren Benutzernamen und Ihr Passwort ein wird über gehen in der klaren.
Also ehrlich gesagt, ist dies völlig inakzeptabel.
Und es ist so trivial, die Dinge zu vermeiden wie diese als Designer einer Website
und als Programmierer einer Website.
>> Aber das Essen zum Mitnehmen hier für uns als Nutzer der Webseiten
ist nur, dass alle schätzen Es braucht nur für eine dumme Design
Entscheidung, nicht zu rechtfertig Design-Entscheidung, so dass jetzt, wenn Sie wissen, mein Passwort ist
"Crimson" auf diese Website, wahrscheinlich haben Sie
nur in einem ganzen Bündel von bekam anderen Websites, die ich jetzt haben.
Und es gibt nicht viel von eine Verteidigung gegen die
andere als das, was Chang hat an diesem Morgen.
Er ging zu Edible Arrangements, die wird die Straße hinunter in Cambridge,
und körperlich dieses gekauft für uns.
Das war viel sicherer als Nutzung der Website in diesem Fall.
>> Aber das Detail, um ein Auge für ist eigentlich, was im Browser bis oben
da.
Aber auch, dass ein wenig trügerisch sein kann.
Also ein weiterer interessanter Beispiel und Weise zu verteidigen
gegen this-- und tatsächlich, lass uns nicht, dass die Art und Weise zu verteidigen first--
dagegen ist eine Technik dass Sicherheits Menschen würden
rufen die Zwei-Faktor-Authentifizierung.
>> Weiß jemand, was die Lösung um Probleme wie das heißt?
Was ist die Zwei-Faktor-Authentifizierung?
Oder anders ausgedrückt, wie viele von Ihnen es verwenden?
OK, so ein paar schüchterne Menschen.
Aber ja.
Ich sah deine Hand nach oben.
Was ist die Zwei-Faktor-Authentifizierung?
>> PUBLIKUM: Grundsätzlich zusätzlich zur Eingabe Ihres Passworts
Sie haben auch eine Sekundär [unverständlich] per SMS auf Ihr Handy geschickt
an der [unverständlich].
DAVID J. MALAN: Genau.
Neben einigen Primärform der Authentifizierung, wie ein Kennwort,
Du suchst einen Sekundär gefragt Faktor, der typischerweise
etwas, das Sie haben physisch auf Sie, wenn es
kann etwas ganz anderes sein.
Und das Ding ist typischerweise ein Cellphone in diesen Tagen auf die Sie bekommen
eine temporäre Textnachricht, die besagt, geschickt "Ihre temporären Zugangscode lautet 12345."
>> Also zusätzlich zu meinem Kennwort "Crimson" Ich auch
müssen in welcher Art Die Website hat mir getextet.
Oder wenn Sie mit einem haben diese Bank oder ein Investmentkonto,
Sie manchmal diese wenig Dongles
tatsächlich einen Pseudozufalls Zahlengenerator in sie aufgebaut,
aber sowohl die Vorrichtung und die Bank wissen, was Ihre erste Samen ist
damit sie wissen, wie auch der wenig Code deine kleine Schlüsselanhänger
marschiert voraus jede Minute oder zwei, Wertewandel,
so funktioniert das Wertänderung auf dem Server der Bank
so dass sie in ähnlicher Weise authentifizieren Sie nicht nur mit Ihrem Passwort,
aber mit dieser temporären Code.
Nun, können Sie tatsächlich tun dies in Google.
Und ehrlich gesagt, ist dies ein gute Angewohnheit,
vor allem, wenn Sie verwenden Gmail ganze Zeit auf einem Browser.
Wenn Sie zu dieser URL hier, was ist zu gehen die Folien online heute, und dann
klicken Sie auf 2-Step Verification, gleichen tatsächlichen was es gibt.
Sie werden aufgefordert zu geben sie Ihre Handy-Nummer.
Und dann, immer wenn Sie sich anmelden Gmail, werden Sie nicht nur aufgefordert,
nach Ihrem Passwort, sondern auch für ein wenig Code, der an Ihr Telefon gesendet wird
vorübergehend.
Und so lange, wie Sie Cookies aktiviert haben, und solange Sie nicht explizit tun
abmelden, werden Sie nur zu, dass einmal in eine Weile zu tun,
wie wenn Sie sich hinsetzen an einem neuen Computer.
>> Und der Kopf auch hier ist, wenn man hinsetzen irgendInternetCafé-Stil
Computer oder einfach nur ein Freundes-Computer, auch
Zahlt Ihr Freund böswillig oder unwissentlich
hat einige Tastatur-Logger auf seinem Computer installiert ist,
so dass alles, was Sie Typ wird protokolliert,
zumindest, dass zweite Faktor, dass temporären Code, ist vergänglich.
Damit er oder sie oder wer auch immer ist beeinträchtigt der Computer
kann nicht in Sie anschließend einloggen, auch wenn alles andere
war anfällig oder sogar unverschlüsselt überhaupt.
Facebook hat auch dies mit dieser URL hier
wo Sie auf Login Zulassungen klicken können.
So auch hier, wenn Sie nicht wollen Freunde, um Menschen zu stoßen,
Sie wollen nicht auf Facebook stossen werden oder Entsendung Status-Updates für Sie,
Zwei-Faktor-Authentifizierung hier ist wahrscheinlich eine gute Sache.
Und dann gibt es diese andere Technik überhaupt,
nur Wirtschaftsprüfung, die auch ist eine gute Sache für uns Menschen,
wenn die Zwei-Faktor erweist ärgerlich, die, Zwar kann es, oder es ist einfach nicht
auf irgendeiner Webseite, minimal verfügbar ein Auge auf, ob und wann
Sie in die Stellen der Anmeldung sind, wenn sie erlauben Ihnen, ist eine gute Technik, auch.
Also hast du Facebook auch diese Login-Benachrichtigungen verfügen, wobei
jederzeit Facebook realisiert, hm, hat David angemeldet von einigen Computer oder Telefon
dass wir noch nie zuvor aus gesehen eine IP-Adresse, die nicht vertraut aussieht,
sie werden Ihnen zumindest eine Nachricht E-Mail zu, was E-Mail Adresse
haben Sie auf Datei, sagen, sieht das verdächtig?
Wenn ja, ändern Sie Ihr Passwort sofort.
Und so gibt es auch nur Prüfungsverhalten
auch nachdem Sie waren gefährdet ist, kann zumindest
verengen das Fenster während die Sie anfällig sind.
>> Alle Rechte, Fragen auf dem Zeug bisher?
Heute ist der Tag, um alle zu erhalten Ihre Paranoia bestätigt oder verweigert.
Das ist größtenteils bestätigt, traurig.
Ja?
>> PUBLIKUM: [unverständlich] Telefon, was ist, wenn Ihr Telefon Pausen,
und dann ist es immer schwer verify--
>> DAVID J. MALAN: True.
>> PUBLIKUM: Oder wenn Sie in einer anderen sind Land und sie lassen dich nicht
einloggen, weil [unverständlich].
DAVID J. MALAN: Absolut.
Und so sind die zusätzlichen Kosten, die Ihnen entstehen.
Es gibt immer dieses Thema eines Trade-off, nachdem alle.
Und dann, wenn Sie Ihr Handy verlieren, wenn es bricht, wenn Sie im Ausland sind,
oder Sie haben einfach nicht ein Signal, wie ein 3G oder LTE-Signal,
Sie werden vielleicht nicht wirklich der Lage sein, zu authentifizieren.
>> Also noch einmal, diese beiden sind Kompromisse.
Und manchmal kann es ein erstellen viel Arbeit für Sie als Ergebnis.
Aber es hängt wirklich, dann auf über die zu erwartende Preis zu Ihnen
ist von etwas Befinden insgesamt gefährdet.
>> So SSL, dann ist diese Technik, wir alle in der Regel als selbstverständlich betrachten
noch übernehmen ist es, auch wenn das ist eindeutig nicht der Fall.
Und du noch irre können Menschen, obwohl, auch mit diesem.
Also hier ist ein Beispiel für eine Bank.
>> Dies ist die Bank of America.
Es gibt eine ganze Menge von diesen in Harvard Square und darüber hinaus.
Und feststellen, dass an der Spitze der der Bildschirm, gibt es eine, ja, HTTPS.
Und es ist sogar grün und für uns markiert
um anzuzeigen, dass dies tatsächlich ein rechtmäßig sichere Website,
oder so haben wir ausgebildet worden zu glauben.
>> Nun, abgesehen davon, obwohl, feststellen, dass, wenn wir hineinzoomen
gibt es dieses Ding hier, wo Sie werden aufgefordert, melden Sie sich an.
Was bedeutet das Vorhängeschloss bedeutet rechts dort, neben meinem Benutzernamen auffordern?
Das ist ziemlich häufig auf Websites, zu.
Was bedeutet das Vorhängeschloss das?
Sie scheinen, wie Sie wissen.
>> PUBLIKUM: Es hat nichts zu bedeuten.
>> DAVID J. MALAN: Es hat nichts zu bedeuten.
Es bedeutet, dass die Bank of America weiß, wie HTML mit Image-Tags, richtig zu schreiben?
Es bedeutet wirklich nichts, denn auch wir mit dem ersten Tag der Look
bei HTML können Code auf eine Seite mit einem roten Hintergrund und ein Bild,
wie ein GIF oder Dingsbums, dass geschieht, um wie ein Vorhängeschloss aussehen.
Und doch ist dieses super in Webseiten verbreitet,
weil wir ausgebildet worden, anzunehmen, dass, oh, Vorhängeschloss bedeutet sichere,
wenn es wirklich nur bedeutet, dass Sie wissen, HTML.
>> Zum Beispiel, wieder in den Tag, konnte ich habe gerade diese auf meiner Website,
behauptete, es ist sicher, und fragen, effektiv,
für Benutzernamen und Passwörter der Menschen.
So suchen in der URL zumindest eine bessere Ahnung,
denn das ist in Chrome eingebaut oder was auch immer-Browser Sie verwenden.
Aber selbst dann, manchmal Dinge schief gehen kann.
Und in der Tat könnte man nicht immer siehe HTTPS, in grün geschweige denn.
>> Hat jemand von euch schon einmal ein Bildschirm wie das gesehen?
Vielleicht haben Sie, eigentlich, früher im Oktober
wenn ich vergessen zu bezahlen unsere SSL-Zertifikat, wie es heißt,
und wir wurden wie die Suche das für ein oder zwei Stunden.
So haben Sie wahrscheinlich Dinge gesehen wie diese, mit einem Durchschlag,
wie ein roter Faden durch das Protokoll in der URL
oder eine Art Bildschirm, der ist mindestens ermahnen Sie
für den Versuch, weiter zu gehen.
Und Google hier lädt Sie wieder in Sicherheit zu gehen.
>> Nun wird in diesem Fall gemeint, dass dies nur das SSL-Zertifikat, das wir benutzten,
die großen, mathematisch nützliche Nummern Das mit CS50 der Server zugeordnet sind,
waren nicht mehr gültig.
Und in der Tat, wir simulieren können Dies ist, wie können Sie auf Ihren Laptop.
Wenn ich in Chrome gehen Sie hier, und lassen Sie uns auf facebook.com zu gehen,
und es sieht aus wie das ist sicher.
Aber lassen Sie mich gehen Sie vor und jetzt klicken Sie auf das Vorhängeschloss hier.
>> Und lassen Sie mich zum Anschluss gehen, Zertifikatinformationen.
Und in der Tat, was Sie hier sehen, ist ein Haufen
Details niedrigerer Ebene zu wer facebook.com wirklich ist.
Es scheint, dass sie Geld bezahlt haben ein Unternehmen vielleicht genannt DigiCert Hoch
Assurance, die versprochen hat um den Rest der Welt zu sagen,
dass, wenn ein Browser überhaupt sieht, a certificate-- Sie denken können
es wörtlich als ein Zertifikat, sieht aus wie dieser kitschig Ding oben
left-- dann facebook.com ist, die sie sagen sie sind, weil die ganze Zeit, wenn
Sie eine Website besuchen, wie cs50.harvard.edu oder facebook.com
oder gmail.com, die HTTPS verwenden URLs, hinter den Kulissen,
gibt es diese Art von Transaktion geschieht automatisch
für Sie, wobei facebook.com, in diesem Fall
wird an Ihren Browser schickt seine sogenannte SSL-Zertifikat, oder besser gesagt,
seinen öffentlichen Schlüssel,
und dann Ihrem Browser wird mit diesem öffentlichen Schlüssel
anschließend senden verschlüsselte Datenverkehr zu und von ihm.
>> Aber es gibt diese ganze Hierarchie in der Welt der Unternehmen
dass Sie Geld zu zahlen, die wird dann bezeugen, in einem digitalen Sinne
Sie sind in der Tat facebook.com oder Ihr Server ist in der Tat cs50.harvard.edu.
Und in Browsern gebaut, wie Chrome und IE und Firefox,
ist eine Liste aller Personen, sogenannte Zertifizierungsstellen
, der von erlaubten werden Microsoft und Google und Mozilla
zu bestätigen oder zu leugnen, dass facebook.com ist, der es sagt, es ist.
Aber der Haken ist, dass diese Dinge ablaufen.
In der Tat sieht Facebook ist wie es läuft im nächsten Oktober 2015.
>> So können wir tatsächlich simulieren dies, wenn ich gehen in meinem Mac zu meinem Systemeinstellungen,
und ich gehe in Datum und Uhrzeit, und Ich in Datum und Uhrzeit gehen Sie hier,
und ich entsperren dieses hier-- Glück wir nicht offenbaren ein Passwort dies Zeit--
und jetzt habe ich nach unten gehen, um diese zu deaktivieren.
Und lassen Sie uns actually-- oops, das ist nicht so interessant wie dies zu tun.
Wir sind buchstäblich in der Zukunft jetzt was bedeutet, das ist, was 2020 ist wie.
Wenn ich jetzt laden die page-- lass es uns tun im Ingognito mode--
wenn ich die Seite neu laden, dort gehen wir.
>> So, jetzt denkt, dass mein Computer es ist 2020, aber mein Browser
weiß, dass diese Bescheinigung Facebook läuft, natürlich, im Jahr 2015.
So ist es mir diese rote Meldung.
Nun, zum Glück, Browser wie Chrome tatsächlich
machte es ziemlich schwer, gehen dennoch.
Sie wollen mich ja zurück zu Sicherheit gehen.
>> Wenn ich hier klicken Advance, ist es mir sagen einige weitere Details.
Und wenn ich wirklich will um fortzufahren, werden sie lassen
mir, facebook.com, welches ist zu gehen, wieder, unsicher, an welcher Stelle
Ich werde die Homepage von Facebook zu sehen, wie diese.
Aber dann andere Dinge scheinen Bruch zu sein.
Was ist wohl an dieser Stelle brechen?
PUBLIKUM: JavaScript.
DAVID J. MALAN: Wie die JavaScripts und / oder CSS
Dateien sind ähnlich Begegnung mit diesen Fehler.
Also das ist nur eine schlechte Situation insgesamt.
Aber der Punkt ist hier, dass zumindest Facebook hat in der Tat SSL aktiviert
für ihre Server, wie viele Websites, , aber nicht notwendigerweise alle.
>> Aber das ist nicht allein das Essen zum Mitnehmen hier.
Es stellte sich heraus, dass auch SSL wurde gezeigt,
unsicher in irgendeiner Weise zu sein.
Also ich bin Art deutete an, dass SSL, gut.
Geben Sie für HTTPS-URLs, und das Leben ist gut, weil alle Ihre HTTP-Datenverkehr
und Header und Inhalt ist verschlüsselt.
>> Niemand kann sie in das abfangen Mitte, mit Ausnahme eines sogenannten Mann
mitten drin.
Dies ist eine allgemeine Technik in der Welt der Sicherheit bekannt
als Man-in-the-Middle-Angriff.
Angenommen, Sie haben diese kleine bist Laptop über hier auf der linken Seite,
und nehme an, Sie versuchen, zu besuchen sind ein Server dort rechts
wie facebook.com.
>> Aber nehmen wir an, dass in zwischen Ihnen und Facebook,
ist eine ganze Reihe von anderen Servern und Ausrüstung, wie Switches und Router,
DNS-Server, DHCP-Server, keiner von denen wir steuern.
Es könnte von Starbucks gesteuert werden oder Harvard oder Comcast oder dergleichen.
Nun, angenommen, dass jemand böswillig, in Ihrem Netzwerk,
in zwischen Ihnen und Facebook, ist in der Lage, Ihnen zu sagen
dass, weißt du was, die IP-Adresse Facebook ist nicht das, was Sie denken, es ist.
Es ist diese IP statt.
>> Und so Ihrem Browser ist in anfordernden ausgetrickst
Verkehr von einem anderen Computer überhaupt.
Nun wird angenommen, dass Computer sieht einfach überhaupt
der Verkehr Sie von der Beantragung sind Facebook und alle Web-Seiten
dass Sie von Facebook anfordert bist.
Und jedes Mal, es in Ihrem Verkehr sieht eine URL, die mit https beginnt,
sie dynamisch auf die Fliegen, schreibt es als HTTP.
Und jedes Mal, es einen Ort sieht Header, Standort Dickdarm,
wie wir verwenden, um umzuleiten der Benutzer auch diejenigen,
kann von diesem Mann in geändert werden das mittlere von HTTPS auf HTTP.
>> Also auch wenn Sie sich vielleicht denken, dass Sie bei der realen Facebook sind,
es ist nicht so schwer für ein Gegner mit physischem Zugang
zu Ihrem Netzwerk einfach Rückseiten für Sie, dass
aussehen wie Gmail, dass aussehen wie Facebook,
und in der Tat die URL identisch, weil sie
vorgibt, dass gleichen Hostnamen haben wegen einer Ausbeutung von DNS
oder eine andere System so.
Und das Ergebnis ist dann dass wir Menschen vielleicht nur
erkennen, dass, OK, das sieht aus wie Gmail oder zumindest die ältere Version,
wie ist diese Folie aus eine ältere Präsentation.
Aber es sieht aus wie this-- http://www.google.com.
>> Also auch hier die Realität ist, dass, wie viele von Ihnen,
wenn Sie auf Facebook oder Google Mail oder jeder gehen Website und Sie ein wenig etwas wissen
über SSL, wie viele von euch körperlich https: // und dann die Website
Name geben.
Die meisten von uns geben Sie einfach, wie, CS50, Enter drücken, oder F-A für Facebook
und drücken Sie die Eingabetaste, und lassen Sie es die automatische Vervollständigung.
Doch hinter den Kulissen, wenn Sie beobachten Ihren HTTP-Datenverkehr,
gibt es wahrscheinlich eine ganze Reihe jener Ort Header
dass Sie von senden Facebook www.facebook.com
um https://www.facebook.com.
>> Also das ist, einen oder mehrere HTTP-Transaktionen wo Sie Ihre Informationen vollständig
im Klartext gesendet, kein Verschlüsselung auch immer.
Nun, das nicht so eine große sein könnte beschäftigen, wenn alles, was Sie zu tun versuchen
wird Zugriff auf die Homepage, du bist nicht Senden Sie Ihren Benutzernamen und Ihr Passwort ein.
Aber was ist es unter die Haube, vor allem
für PHP-basierte Websites, die auch ist hin und her, wenn geschickt
Sie einige Webseite, wenn besuchen dass Website benutzt, sagen wir, PHP
und implementiert Funktionen wie pset7?
Was wurde hin und her geschickt in Ihrer HTTP-Header, die du gabst
Zugang zu diesem hübschen nützlich in PHP Super global?
>> PUBLIKUM: Plätzchen.
>> DAVID J. MALAN: Plätzchen, speziell der PHP Sess-ID-Cookie.
So erinnern, wenn wir gehen, um, sagen wir, cs50.harvard.edu wieder
aber dieses Mal wollen wir eröffnen das Registerkarte Netzwerk, und jetzt, hier oben,
wir buchstäblich nur gehen um http://cs50.harvard.edu
und dann drücken Sie Enter.
Und dann auf den Bildschirm schauen hier unten.
Beachten Sie, dass wir in der Tat bekam zurück eine 301 bewegt dauerhaft
Nachricht, was bedeutet, gibt es eine Location-Header hier
Welches ist nun die Umleitung mich zu HTTPS.
>> Aber der Haken ist, dass, wenn ich schon ein Cookie auf meiner Hand gestempelt praktisch,
Wie wir bereits besprochen und Ich die menschliche Art unwissentlich
besuchen Sie einfach die unsicher Version, und mein Browser dauert es
auf sich selbst, um diese Hand Stempel für zeigen die erste Anforderung, die über HTTP ist,
jeder Mann in der Mitte, einem Gegner in der Mitte,
kann theoretisch nur sehen diese HTTP-Header, nur
wie wir auf sie schauen hier.
Es ist nur einmal bist du Gespräch mit einem HTTPS
URL bedeutet das Handstempel selbst zu bekommen verschlüsselt, a la Caesar oder Vigenere,
aber mit einem Züchter Algorithmus überhaupt.
So auch hier, auch wenn Websites verwenden HTTPS,
wir Menschen wurden konditioniert, danke für die automatische Vervollständigung und andere Techniken,
um nicht einmal darüber nachdenken, die möglichen Auswirkungen.
Nun, es gibt Möglichkeiten, dies zu umgehen.
Zum Beispiel sind viele Websites können so konfiguriert werden
so dass, sobald Sie diese Hand haben Stempel können Sie dem Browser mitteilen,
Dieser Handstempel ist nur für SSL-Verbindungen.
Der Browser sollte nicht präsentieren es mir, es sei denn, es ist über SSL.
Aber viele Websites nicht mit, dass die Mühe.
Und viele Websites offenbar nicht einmal mit SSL gestört.
>> Also für mehr dazu, es gibt tatsächlich noch mehr Schmutz in dieser Präsentation
dass ein Mitarbeiter an einer sogenannten schwarzen gab Hat-Konferenz ein paar Jahren,
wo es auch andere bösartigen Tricks Menschen benutzt haben.
Man könnte diesem Rückruf Begriff ein Favicon
ist wie ein kleines Logo, das ist oft im Fenster des Browsers.
Nun, was ist schon verbreitet unter bösen Jungs ist
um fab Symbole, wie das, was aussehen lassen?
PUBLIKUM: [unverständlich].
DAVID J. MALAN: Sagen Sie wieder?
PUBLIKUM: Die Webseiten.
DAVID J. MALAN: keine Website.
So Favicon winzig kleine Symbol.
Was wäre das Beste sein bösartige, manipulative Sache
Sie machen Ihre Website könnte Standardsymbol aussehen?
PUBLIKUM: Ein grünes Schloss.
DAVID J. MALAN: Was ist das?
PUBLIKUM: Ein kleiner grüner Schloss.
DAVID J. MALAN: Wie ein grünes Schloss, genau.
So können Sie diese Ästhetik haben können eines kleinen grünen Vorhängeschloss,
anspielend auf die Welt, oh, wir sind zu sichern, wenn wieder alle es bedeutet
ist, dass Sie einige HTML-Kenntnisse.
So Session Hijacking bezieht sich auf genau das.
Wenn Sie jemanden haben, der Art ist Sniffing den Äther in diesem Raum hier
oder physischen Zugriff auf ein Netzwerk und kann Ihre Cookies sehen
kann er oder sie, dass greifen PHP Sess-ID-Cookie.
Und dann, wenn sie klug genug zu wissen,
wie man das Cookie als ihre eigenen zu senden Handstempel nur durch Kopieren diesen Wert
und Senden der HTTP-Header, jemand könnte sehr leicht
loggen Sie sich in einem der Facebook Konten oder Google Mail-Konten
oder Twitter-Accounts, die hier sind, offen in den Raum, wenn Sie nicht mit SSL
und wenn die Website ist nicht richtig mit SSL.
>> Lassen Sie uns also Übergang zu einer anderen.
Also eine weitere wahre Geschichte.
Und dies gerade in der brach Nachrichten ein oder zwei Wochen vor.
Verizon getan hat eine sehr böse Sache,
und wie am besten Leute können sagen, Seit mindestens 2012, wobei,
Beim Zugriff auf Websites über einen Verizon Handy, was Hersteller ist es,
sie anmaßend gewesen, Wie geht die Geschichte,
Injektion in alle Ihre HTTP Verkehrs eigenen HTTP-Header.
Und das Header sieht wie this-- X-UIDH.
UID ist wie ein einzigartiges Bezeichner oder Benutzer-ID.
Und X bedeutet nur, das ist eine individuelle header das ist nicht Standard.
>> Aber was das bedeutet ist, dass, wenn ich nach oben ziehen,
zum Beispiel, jede Website auf meinem Handy hier--
und ich bin mit Verizon als meine carrier-- obwohl mein Browser möglicherweise nicht
entsenden diese HTTP header, Verizon, sobald
als das Signal ihrer erreicht Handy-Turm irgendwo,
ist seit einiger Zeit der Injektion dieses gewesen header in allen unseren HTTP-Datenverkehr.
Warum tun sie das?
Vermutlich für die Verfolgung von Gründen für Werbe Gründen.
>> Aber der debilen Design-Entscheidung hierbei ist, dass ein HTTP-Header,
wie Sie Jungs aus pset6 wissen, wird von jedem Web-Server empfangen
dass Sie Ihr Interesse an Verkehr.
Also die ganze Zeit, wenn du hast Besuch
Facebook oder Google Mail oder eine Website dass kein SSL ganze Zeit--
und tatsächlich, jene zwei zum Glück jetzt do--
aber auch andere Websites, die kein SSL verwenden die ganze Zeit,
Verizon hat im Wesentlichen pflanzt, zwangsweise,
Handstempel auf allen unseren Hände, die auch wir nicht sehen,
sondern tun die Ende Webseiten.
Und so ist es nicht so gewesen hart für jeden im Internet
einen Web-Server auf realisieren, ooh, das ist David,
oder, ooh, ist dies Davin, auch wenn wir rigorosen über räumen unser Plätzchen,
weil es nicht von uns kommen.
Es ist von dem Träger kommen.
>> Sie machen einen Lookup auf Ihre Telefonnummer und dann sagen, oh, das ist David.
Lassen Sie mich zu injizieren eine eindeutige Kennung, so dass unsere Werbekunden oder wer kann
verfolgen diese.
Also das ist eigentlich sehr, sehr, sehr schlecht und erschreckend.
Und ich möchte Sie ermutigen Schauen Sie, zum Beispiel,
unter dieser URL, die ich lehnen sollte Ich tatsächlich versucht dies an diesem Morgen.
Ich schrieb ein kleines Skript, legte es unter dieser URL,
besucht es mit meinen eigenen Verizon Cellphone nach dem Einschalten Wi-Fi weg.
So müssen Sie die Wi-Fi ausgeschaltet, so dass Sie 3G oder LTE oder dergleichen sind.
Und dann, wenn Sie besuchen Diese URL, all das Skript
tut für euch, wenn Sie möchten, spielen,
wird es ausspuckt, was HTTP-Header Ihr Telefon an unseren Server gesendet.
Und ich eigentlich, in Fairness, tat das nicht an diesem Morgen, sehen die
lässt mich denken, entweder die lokale Handy-Turm wurde ich verbunden
oder Dingsbums macht es nicht, oder sie haben zog sich, dies zu tun vorübergehend.
Aber für weitere Informationen, auf diese URL Kopf hier.
>> Und nun, dies this-- Comic könnte Sinn machen.
Nein?
Ok.
In Ordnung.
Das gestorben.
In Ordnung.
>> Werfen wir also einen Blick auf ein paar mehr Angriffe, wenn auch nur die Sensibilisierung
und dann bieten ein paar mögliche Lösungen
so dass Sie umso mehr bewusst sind.
Dieses wir über die anderen gesprochen Tag, aber nicht einen Namen zu geben, um es.
Es ist ein Cross-Site Request Forgery, die ist ein übermäßig andere Art zu sagen
Sie einen Benutzer zum Klicken auf Trick eine URL wie diese, die ihnen Tricks
in einige Verhaltensweisen, sie habe nicht die Absicht.
>> In diesem Fall scheint zu versuchen, mich zu betrügen
in Verkauf meiner Anteile an Google.
Und das wird, wenn erfolgreich I, der Programmierer pset7,
haben nicht getan, was?
Oder besser gesagt, ganz allgemein, in dem, was Fällen bin ich anfällig für einen Angriff
wenn jemand Tricks ein anderer Benutzer zum Klicken auf einen URL wie diese?
Ja?
>> PUBLIKUM: Sie müssen nicht zu unterscheiden zwischen GET und POST.
>> DAVID J. MALAN: Gut.
Wenn wir nicht zu unterscheiden zwischen GET und POST,
und in der Tat, wenn wir zulassen, GET für den Verkauf von Dingen,
laden wir diese Art von Angriff.
Aber wir konnten noch mildern etwas.
Und ich sagte: Ich glaube, letzte Woche, dass Amazon zumindest
versucht, diese mit einer Technik zu mildern das ist ziemlich einfach.
Was wäre eine gute Idee zu tun auf Ihrem Server,
anstatt nur blind verkaufen was auch immer Symbol der Benutzer in?
PUBLIKUM: Bestätigung der möglichen?
DAVID J. MALAN: Ein Bestätigungsbildschirm, etwas mit menschlicher Interaktion
so dass ich gezwungen machen das Urteil nennen,
auch wenn ich naiv angeklickt ein Link, der wie folgt aussieht
und führte mich in die Zelle Bildschirm an wenigstens hat mich gebeten, zu bestätigen oder zu leugnen.
Aber kein ungewöhnlicher Angriff, vor allem in so genannten Phishing oder Spam-like
Anschläge.
>> Jetzt ist dieses ein wenig subtiler.
Dies ist eine Cross-Site-Scripting-Angriff.
Und das passiert, wenn Ihr Website ist nicht mit
das Äquivalent von htmlspecialchars.
Und es nimmt Benutzereingaben und einfach blind Injektion in einer Web-Seite,
als mit Druck oder Echo, with-- again-- etwas heraus telefonieren
wie htmlspecialchars.
>> So nehme die Website in Frage ist vulnerable.com.
Und angenommen, es übernimmt ein Parameter namens q.
Schauen Sie, was passieren könnte, wenn ich eigentlich ein schlechter Kerl,
geben oder Trick einen Benutzer Besuch einer URL, die wie this-- sieht
q = offene Skript-Tag, geschlossen script-Tag.
Und weiter: Ich gehe davon aus, dass vulnerable.com nicht
geht gefährlich zu drehen Charaktere wie offenen Klammern
in HTML-Entitäten, die Et-Zeichen, L-T, Semikolon Sache
dass Sie vielleicht gesehen haben.
>> Aber was ist das Skript oder JavaScript-Code
Ich versuche, ein Trick Benutzer in der Ausführung?
Nun, bezieht document.location um aktuelle Adresse meines Browsers.
Also, wenn ich tun document.location =, Dies ermöglicht es mir, um den Benutzer umleiten
in JavaScript zu einer anderen Website.
Es ist wie unsere PHP-Funktion umzuleiten, aber in JavaScript getan.
>> Wo bin ich versucht, den Benutzer zu senden?
Nun, es scheint, badguy.com/log.php, denen einige Skript ist, offenbar,
der Bösewicht schrieb, das dauert ein Parameter namens Cookie.
>> Und beachtet, was muss ich scheinen Verketten
auf das Ende dieses Gleichheitszeichen?
Nun, etwas, das sagt document.cookie.
Wir haben noch nicht darüber gesprochen.
Aber es stellt sich heraus, in JavaScript, genau wie in PHP,
Sie alle Cookies zugreifen dass Ihr Browser ist eigentlich mit.
>> So dass die Wirkung dieses einen Codezeile, wenn ein Benutzer
wird in diesem Link ausgetrickst und die Website vulnerable.com nicht
entkommen sie mit htmlspecialchars, ist, dass Sie nur effektiv haben
hochgeladen, um alle Ihre Cookies log.php.
Und das ist nicht immer so problematisch, es sei denn, einer jener Cookies
ist Ihre Session-ID, Ihr sogenannten Handstempel, die
bedeutet badguy.com kann seinen eigenen zu machen HTTP-Anfragen, Senden dieser gleichen Hand
Stempel, dass dieselbe Cookie-Header, und melden Sie sich unabhängig von Website
Sie waren zu Besuch, die in dieser Fall ist vulnerable.com.
Es ist eine Cross-Site-Scripting Angriff im Sinne
dass Sie Art von Täuschung einer Website in Erzählen
eine weitere Website über einige Informationen es sollte in der Tat nicht, Zugriff haben.
>> In Ordnung, bereit für ein andere beunruhigend Detail?
Alles klar, die Welt ist ein beängstigender Ort, rechtmäßig so.
Hier ist eine einfache JavaScript-Beispiel, das ist
in der heutigen Quellcode genannt Geolocation 0 und 1.
Und es gibt ein paar Komplettlösungen Online für diese.
>> Und es sieht folgendes, wenn ich öffnen dieser Web-Seite in Chrome.
Es tut zunächst nichts.
OK, wir werden dies noch einmal zu versuchen.
Oh.
Nein, es sollte etwas tun.
OK, stehen.
>> Lassen Sie uns versuchen, diese noch einmal.
[Unverständlich]
Ah, OK, nicht sicher, warum the-- oh, das Gerät
wahrscheinlich Internet verloren Zugang aus irgendeinem Grund.
Alles klar, so passiert mir auch.
>> Alles klar, so Bekanntmachung was ist denn hier los.
Diese kryptische aussehende URL, die ist nur eine der CS50-Server,
will meinen Computer verwenden Lage, wie physisch bedeutet es.
Und wenn, ja, klicken Sie auf I auf Lassen Sie, lassen Sie uns sehen, was passiert.
Offenbar ist dies meine aktuelle Breite und Längskoordinaten unten
auf eine verdammt gute Auflösung.
>> Wie kam ich auf diese?
Wie funktioniert diese Website, wie CS50-Server, weiß physikalisch überall auf der Welt
Ich bin, geschweige denn mit dieser Präzision.
Nun stellt out-- uns einfach lassen Schauen Sie sich die Seite des source--
dass hier ist ein Bündel von HTML an der Boden, die erste hat this--
body onload = "geolocate" - nur eine Funktion, die ich geschrieben habe.
>> Und ich sage, zum Einlegen die Seite, rufen Geolokalisieren.
Und dann gibt es nichts in den Körper, da
im Kopf der Seite, bemerken, was ich hier habe.
Hier ist meine Geolokalisieren Funktion.
Und das ist nur ein Fehler checking-- wenn der Typ des navigator.geolocation
ist nicht definiert.
So JavaScript hat diese Mechanismus, in dem Sie
kann sagen, was ist der Typ dieser Variable?
Und wenn es nicht undefined-- das bedeutet, es ist etwas value--
Ich werde rufen navigator.geolocation.getCurrentPosition
und dann Rückruf.
>> Was ist das?
Also in der Regel, was ist ein Rückruf, nur klar zu sein?
Möglicherweise begegnet dies bereits in pset8.
Rückruf ist eine generische Begriff für das, was?
Fühlt nur mir heute.
PUBLIKUM: [unverständlich].
DAVID J. MALAN: Genau, Eine Funktion, die sollte
nur aufgerufen werden, wenn wir Daten haben.
Dieser Aufruf an den Browser, meine aktuellen Position, vielleicht eine Millisekunde dauern,
es eine Minute dauern kann.
Was dies bedeutet, ist, dass wir sagen, Das GET getCurrentPosition Verfahren,
nennen diese Callback-Funktion, die ich wörtlich benannt Rückruf
der Einfachheit halber, die anscheinend ist diese hier.
>> Und der Weg getCurrentPosition arbeitet, einfach durch Lesen der Dokumentation
für einige JavaScript-Code online, ist dass es fordert, dass so genannte Callback
Funktion, übergibt es in es ist ein JavaScript-Objekt,
innerhalb dessen ist .coords.latitude und .coords.longitude,
das ist genau das, wie, dann, wenn ich diese Seite neu geladen wird,
Ich konnte meine Position hier zu sehen.
Nun, zumindest gab es eine Verteidigung hier.
Bevor ich besucht diese Seite, wenn es tatsächlich funktioniert,
was wollte ich zumindest für aufgefordert?
>> PUBLIKUM: [unverständlich].
>> DAVID J. MALAN: Ja oder NO- tun Sie zulassen oder ablehnen wollen?
Aber denken Sie auch über die Gewohnheiten euch haben wahrscheinlich angenommen,
sowohl auf Ihrem Telefon und Ihrem Browser.
Viele von uns, mich selbst enthalten, sind wahrscheinlich
ziemlich prädisponiert diese days-- Sie ein Pop-up, geben Sie einfach, OK, genehmigen,
Zulassen.
Und immer, Sie setzen können selbst in Gefahr aus diesen Gründen.
>> Also in der Tat, es war diese wunderbare bug ein paar Jahren ago-- oder mangelnde feature--
iTunes vor einigen Jahren, wobei, wenn Sie ein Handy hatten,
und es war ein iPhone, und Sie Ihr Haus verlassen
und damit um die Welt gereist oder die Nachbarschaft, die ganze Zeit,
Ihr Telefon wurde Anmeldung wo Sie sind via GPS.
Und dies ist tatsächlich offenbart, und Menschen, Art erwarten, dass diese jetzt.
Das Telefon weiß, wo Sie sind.
Aber das Problem, dass, wenn Sie Sichern wurden
Ihr Telefon iTunes-- das war vor die Tage der iCloud, die für eine bessere ist
oder worse-- die Daten, die gespeichert wurde, in iTunes, komplett unverschlüsselt.
Also, wenn Sie eine Familie oder Mitbewohner haben oder ein böswilliger Nachbar, der ist
neugierig buchstäblich jedem GPS koordinieren Sie jemals gewesen zu sein,
er oder sie konnte es einfach setze mich an iTunes, laufen
Einige Programme, die frei war zur Verfügung und produzieren Karten wie diese.
>> In der Tat ist das, was ich meiner eigenen Telefon produziert.
Ich steckte es ein.
Und wie es aussieht, basiert auf die blauen Punkte gibt,
das ist, wo die meisten die GPS-Koordinaten waren
von iTunes angemeldet, dass ich war im Nordosten gibt.
Aber ich anscheinend rund gereist etwas, auch innerhalb Massachusetts.
>> Also das ist, Boston Harbor da auf der rechten Seite.
Das ist irgendwie Cambridge und Boston, wo es am dunkelsten.
Und gelegentlich, würde ich laufen Besorgungen großer Geographie.
>> Aber iTunes, seit Jahren hatte, wie am besten Ich könnte sagen, alle diese Daten auf mich.
Man könnte sagen, dass, in diesem Jahr, eigentlich war ich
viel unterwegs zwischen Boston und New York hin und her
und hin und her.
Und in der Tat, das ist mir auf Amtrak, zurück und her, hin und her, ein ganzes Stück.
All das wurde protokolliert und gelagert auf meinem Computer verschlüsselt
für alle, die haben könnte Zugang zu meinem Computer.
>> Das war besorgniserregend.
Ich wusste nicht, warum ich in Pennsylvania oder warum
Mein Telefon wurde in Pennsylvania, offenbar ziemlich dicht.
Und dann, endlich, schaute ich an meinem Gcal und, oh, ich
besucht CMU, Carnegie Mellon, zu der Zeit.
Und puh, diese Art von erklärte, dass Blip.
Und dann, wenn man heran aus weiter, können Sie
sehe ich besucht San Francisco ein oder mehrere Male dann,
und ich hatte sogar einen Zwischenstopp in dem, was Ich denke, ist Vegas, da unten.
Also alle this-- nur Zwischenstopp am Flughafen.
>> PUBLIKUM: [Gelächter]
>> Das ist also nur zu sagen, dass diese Probleme, ehrlich gesagt, sind allgegenwärtig.
Und es fühlt sich nur zunehmend wie es
mehr und mehr davon offengelegt, Das ist wahrscheinlich eine gute Sache.
Ich wage zu behaupten, die Welt ist nicht immer schlimmer bei Schreibsoftware.
Wir sind immer besser, hoffentlich bei Bemerken
wie schlecht bestimmte Software ist, dass wir mit.
Und Gott sei Dank, einige Unternehmen beginnen
verantwortlich für diese gehalten werden.
>> Aber welche Arten von Verteidigungsanlagen können Sie im Sinn haben?
So außer Passwort-Manager, wie 1Password und Lastpass und andere,
neben nur, wenn Sie Ihre Passwörter und kommen mit Zufalls Einsen
mit Software wie dass Sie auch versuchen können
so gut Sie können, um zu verschlüsseln alle Ihre Verkehrs
mindestens schmal der Bereich der Bedrohung.
So zum Beispiel, als Harvard verbundenen Unternehmen, Sie alle gehen zu vpn.harvard.edu
und melden Sie sich mit Ihrem Harvard-ID und PIN.
Und das wird eine sichere etablieren Verbindung zwischen Ihnen und Harvard.
>> Nun, das tut nicht unbedingt schützen
gegen alle Bedrohungen, die dazwischen sind Harvard und Facebook oder Harvard
und Gmail.
Aber wenn Sie sitzen in einem Flughafen oder du bist
sitzt im Starbucks oder du bist sitzt am Ort eines Freundes,
und Sie müssen nicht wirklich vertrauen ihnen oder ihren Konfiguration ihrer Heim-Router,
Sie zumindest glaubhaft machen kann eine sichere Verbindung
an ein Unternehmen wie dieses Hotel, dass ist wahrscheinlich ein wenig besser gesichert
als so etwas wie ein Bucks oder dergleichen.
Und was das bedeutet ist es feststellt, wieder,
Verschlüsselung zwischen Ihnen und dem Endpunkt.
>> Auch Züchter sind Dinge wie diese.
Also einige von euch vielleicht schon sein mit Tor vertraut,
Das ist diese Art der Anonymisierung Netzwerk, wobei viele Leute,
wenn sie diese Software ausführen, route anschließend ihre Internet
Verkehr durch einander.
Also die kürzeste Punkt ist nicht mehr zwischen A und B.
Aber es könnte der ganzen sein statt, so dass Sie im Grunde sind
Abdecken eigenen Tracks und verlassen weniger ein Rekord, wo Sie Ihre HTTP
Verkehr kam, denn es wird durch eine ganze Reihe von anderen Volks
Laptops oder Desktops, zum Guten oder zum Schlechten.
>> Aber auch dies ist nicht eine todsichere Sache.
Einige von euch haben vielleicht im letzten Jahr erinnern die Bombendrohung, die in genannt wurde.
Und es war letztlich ein zurückverfolgt Benutzer, der hier dieses Netzwerk benutzt hatte.
Und der Haken dort, wie ich mich erinnere, ist, wenn es nicht so viele andere Leute
Verwendung einer Software wie diese oder mit diesen Port und Protokoll,
es ist nicht so schwer, für ein Netzwerk, um auch herauszufinden, wer, mit einiger Wahrscheinlichkeit,
war in der Tat Anonymisierungs seine Verkehr.
>> Und ich weiß nicht, ob das waren die tatsächlichen Angaben in Frage.
Aber sicherlich, zu realisieren, dass keine der diese sind absolut sichere Lösungen sowie.
Und das Ziel heute hier ist, um mindestens erhalten Sie über diese Dinge nachzudenken
und kommen mit Techniken zur verteidigen Sie sich gegen sie.
Irgendwelche Fragen zu all den Bedrohungen die Sie erwarten gibt, und hier?
Ja?
PUBLIKUM: Wie sicher tun erwarten wir die durchschnittliche
[? Website zu sein,?] wie die durchschnittliche CS50 Projekt?
>> DAVID J. MALAN: Der durchschnittliche CS50 Projekt?
Es ist immer jedes Jahr bewiesen, dass einige CS50 letzten Projekte sind nicht
besonders sicher.
Normalerweise ist es einige Mitbewohner oder hallmate dass Zahlen this out
durch Senden von Anforderungen an Ihr Projekt.
>> Short answer-- wie viele Webseiten sind sicher?
Ich empfange heute Anomalien.
Wie war es nur Zufall dass ich erkannte, dass diese Website
Ich habe die Bestellung diese offen köstliche Arrangements from--
und ich bin nicht sicher, ich werde aufhören, ihre Website;
Ich könnte nur ändern meine Kennwort mehr regularly--
Es ist nicht klar, wie anfällig alle diese various--
dies ist mit Schokolade überzogene tatsächlich.
Die kurze Antwort, kann ich nicht beantworten, effektiv, außer, es zu sagen
war nicht so schwer für mich, finden einige dieser Beispiele nur
aus Gründen der Diskussion in der Vorlesung.
Und genau im Auge zu behalten Google News und anderen Ressourcen
wird umso mehr von bringen diese Dinge ans Licht.
>> Alles klar, lass uns Schluss mit diesem Prequel
dass CS50 Team hat für Sie vorbereitet in Erwartung der CS50 Hackathon.
Und auf dem Weg in eine Moment wird Obst serviert werden.
[VIDEO PLAYBACK]
[MUSIC Fergie, Q-Tipp und GoonRock, "A LITTLE PARTY tötete nie NIEMAND (ALL
WE GOT) "]
>> - [SNORING]
[END VIDEO PLAYBACK]
DAVID J. MALAN: Das war es für CS50.
Registrieren Sie sich am Mittwoch zu sehen.
[MUSIK - Skrillex "IMMA" Probieren Sie es aus "]