1 00:00:00,000 --> 00:00:11,300 2 00:00:11,300 --> 00:00:15,490 >> DAVID J. Malan: Este é CS50, e este é o inicio da semana 10. 3 00:00:15,490 --> 00:00:19,460 Debe lembrar que nós mostramos na pantalla unha impresora 3D, que 4 00:00:19,460 --> 00:00:21,610 é este dispositivo que leva carretera de plástico 5 00:00:21,610 --> 00:00:24,840 e, a continuación, extruido-lo por calefacción superior e derrete-lo para que poidamos, a continuación, 6 00:00:24,840 --> 00:00:27,310 formar exército de Chang elefantes, por exemplo. 7 00:00:27,310 --> 00:00:29,184 >> Entón, en Leverett House, con todo, hai pouco, eu 8 00:00:29,184 --> 00:00:31,850 estaba falando con un dos seus compañeiros e un amigo de Chang 9 00:00:31,850 --> 00:00:35,720 chamada Michelle, que en realidade internado esta outra empresa o ano pasado que 10 00:00:35,720 --> 00:00:40,010 ten unha técnica diferente para realmente creación de obxectos tridimensionais, 11 00:00:40,010 --> 00:00:41,890 como este pequeno elefante aquí. 12 00:00:41,890 --> 00:00:45,550 En particular, a forma na que isto funciona é que é un exemplo de algo 13 00:00:45,550 --> 00:00:49,740 chamado estereolitografia, polo cal hai esa conca de resina ou líquido, 14 00:00:49,740 --> 00:00:53,340 e logo, un láser que atinxe líquido, e, gradualmente, o dispositivo 15 00:00:53,340 --> 00:00:56,990 ascensores e ascensores e levanta a cousa que está imprimindo, como un elefante, 16 00:00:56,990 --> 00:00:58,676 como que o líquido se fai sólido. 17 00:00:58,676 --> 00:01:00,550 E o resultado, en realidade, é algo que é 18 00:01:00,550 --> 00:01:04,194 moito máis robusto que algúns o plástico agasallos algúns de vós 19 00:01:04,194 --> 00:01:04,819 podería ter. 20 00:01:04,819 --> 00:01:06,860 >> E o que Chang xentilmente fixo por nós aquí foi 21 00:01:06,860 --> 00:01:12,210 fixo un time-lapse usando fotografías ao longo dunha hora ou máis, 22 00:01:12,210 --> 00:01:14,580 probablemente, para producir este cara aquí. 23 00:01:14,580 --> 00:01:19,060 Será que alguén que nunca chegar antes quere vir bater Iniciar este vídeo? 24 00:01:19,060 --> 00:01:21,250 Déixeme ir con, como sobre alí. 25 00:01:21,250 --> 00:01:21,790 Imos cara arriba. 26 00:01:21,790 --> 00:01:24,960 27 00:01:24,960 --> 00:01:25,460 Todo correcto. 28 00:01:25,460 --> 00:01:29,250 29 00:01:29,250 --> 00:01:29,896 E é vostede? 30 00:01:29,896 --> 00:01:31,270 LUKE: Lucas O meu nome é [inaudível]. 31 00:01:31,270 --> 00:01:31,700 DAVID J. Malan: Ola, Luke. 32 00:01:31,700 --> 00:01:32,695 Pracer en coñece-lo. 33 00:01:32,695 --> 00:01:33,653 >> LUKE: Pracer en coñece-lo. 34 00:01:33,653 --> 00:01:35,120 Audiencia: Está executando para UC. 35 00:01:35,120 --> 00:01:38,640 >> DAVID J. Malan: Eu sei, estamos intentando non promover. 36 00:01:38,640 --> 00:01:41,240 Todo ben, entón Luke, todo tes que facer aquí en CS50 37 00:01:41,240 --> 00:01:45,829 é bater a barra de espazo imprimir este elefante. 38 00:01:45,829 --> 00:01:46,495 [REPRODUCIÓN DE VIDEO] 39 00:01:46,495 --> 00:01:49,988 - [MACHINE zumbido] 40 00:01:49,988 --> 00:02:00,467 41 00:02:00,467 --> 00:02:01,964 - [CRASH] 42 00:02:01,964 --> 00:02:04,459 - [Boom] 43 00:02:04,459 --> 00:02:06,147 - [CRASH] 44 00:02:06,147 --> 00:02:06,980 [FIN REPRODUCIÓN DE VIDEO] 45 00:02:06,980 --> 00:02:09,370 DAVID J. Malan: Así que é exactamente o que é a impresión 3D. 46 00:02:09,370 --> 00:02:10,453 E aquí é o elefante. 47 00:02:10,453 --> 00:02:12,100 Grazas por voluntariado. 48 00:02:12,100 --> 00:02:12,830 Todo correcto. 49 00:02:12,830 --> 00:02:16,580 Entón, de novo, por especificación para o proxecto final, este hardware que é 50 00:02:16,580 --> 00:02:18,890 dispoñible para vostedes é, por algún motivo, 51 00:02:18,890 --> 00:02:21,870 o proxecto ten algunha intersección de software e hardware, 52 00:02:21,870 --> 00:02:24,650 entender que estes son agora características. 53 00:02:24,650 --> 00:02:27,750 >> Quería sacar un momento para tocar enriba dun artigo que saíu carmesim 54 00:02:27,750 --> 00:02:30,541 onte á noite, que era para anunciar que este compañeiro aquí, David 55 00:02:30,541 --> 00:02:33,920 Johnson, quen foi o ancián preceptor para Ec 10 por algún tempo, 56 00:02:33,920 --> 00:02:36,210 abandona Harvard no fin de ano lectivo. 57 00:02:36,210 --> 00:02:38,390 E eu só quería ter un momento, honestamente, 58 00:02:38,390 --> 00:02:41,620 agradecer a David diante do CS50. 59 00:02:41,620 --> 00:02:44,360 El foi un mentor sortes para nós ao longo dos anos. 60 00:02:44,360 --> 00:02:46,980 >> E eu sinto que nós, CS50, ten no canto creceu con Ec 10 61 00:02:46,980 --> 00:02:48,870 aquí, xa que están ben diante de nós. 62 00:02:48,870 --> 00:02:52,040 E el e todo o equipo en Ec 10 ten foi marabillosas gracioso, francamente, 63 00:02:52,040 --> 00:02:55,410 como se arrastrar en todos os nosos equipos cada semana, e anos, 64 00:02:55,410 --> 00:02:57,320 proporcionada unha gran cantidade de consello como estabamos 65 00:02:57,320 --> 00:02:59,520 curioso para saber como eles operan Ec 10. 66 00:02:59,520 --> 00:03:02,640 Entón, os nosos agradecementos e admiración de David Johnson. 67 00:03:02,640 --> 00:03:06,560 >> [Aplausos] 68 00:03:06,560 --> 00:03:08,030 69 00:03:08,030 --> 00:03:12,180 >> Agora unrelatedly, así fin está realmente preto. 70 00:03:12,180 --> 00:03:13,630 Estamos aquí a semana 10. 71 00:03:13,630 --> 00:03:15,920 E nós só temos só unha par de semanas formais 72 00:03:15,920 --> 00:03:18,320 aquí na clase á esquerda, seguido por un par de eventos. 73 00:03:18,320 --> 00:03:21,860 Entón, para darlle un sentido do que é no horizonte, aquí estamos hoxe. 74 00:03:21,860 --> 00:03:24,480 >> Este mércores, recall, teremos unha charla convidado 75 00:03:24,480 --> 00:03:27,040 por outro que Propio Steve Ballmer, de Microsoft. 76 00:03:27,040 --> 00:03:31,740 Se aínda non teña ido para cs50.harvard.edu/register, 77 00:03:31,740 --> 00:03:33,360 facelo, sempre que o espazo será limitado. 78 00:03:33,360 --> 00:03:36,447 E eles van estar comprobando IDs na porta hoxe. 79 00:03:36,447 --> 00:03:38,280 Se non estivese aquí a semana pasada, eu penso que sería 80 00:03:38,280 --> 00:03:41,850 provoca-lo cunha mirada diferente en Steve ea emoción que 81 00:03:41,850 --> 00:03:44,215 nos espera o mércores. 82 00:03:44,215 --> 00:03:45,205 >> [REPRODUCIÓN DE VIDEO] 83 00:03:45,205 --> 00:03:46,195 >> -Passion. 84 00:03:46,195 --> 00:03:50,650 >> -Estamos Vai ser incondicional hardcore--. 85 00:03:50,650 --> 00:03:51,640 >> -Innovator. 86 00:03:51,640 --> 00:03:53,339 >> -Bill Dixo, non obtelo. 87 00:03:53,339 --> 00:03:55,130 Nós imos poñer un ordenador en cada mesa 88 00:03:55,130 --> 00:03:58,690 e en cada casa, que se fixo lema da empresa. 89 00:03:58,690 --> 00:04:01,850 Xuro, Bill inventou aquela noite para realmente dar-me 90 00:04:01,850 --> 00:04:04,370 un pouco da visión de por que eu debería dicir que si. 91 00:04:04,370 --> 00:04:07,280 Nunca mirei cara atrás, realmente, despois diso. 92 00:04:07,280 --> 00:04:10,010 >> -Fresh Fóra da facultade, el xuntou unha startup incipiente 93 00:04:10,010 --> 00:04:14,450 e axudou a crecer nunha de América a maioría das empresas exitosas de todos os tempos. 94 00:04:14,450 --> 00:04:16,920 A vida de empresas e leccións aprendidas ao longo do camiño 95 00:04:16,920 --> 00:04:19,925 deixar lo de volta ao seu paixón de infancia e amor. 96 00:04:19,925 --> 00:04:24,650 E esas experiencias teñen preparado el para o seu próximo reto na vida. 97 00:04:24,650 --> 00:04:27,150 >> -Nada Fica no noso crecemento maneira--! 98 00:04:27,150 --> 00:04:29,330 Sigo incondicional! 99 00:04:29,330 --> 00:04:31,150 Vaia Clippers! 100 00:04:31,150 --> 00:04:38,627 >> -Este É Steve Ballmer, "In My Own Words". 101 00:04:38,627 --> 00:04:39,460 [FIN REPRODUCIÓN DE VIDEO] 102 00:04:39,460 --> 00:04:41,240 DAVID J. Malan: --este Mércores para CS50. 103 00:04:41,240 --> 00:04:43,080 Cabeza de novo a este URL aquí. 104 00:04:43,080 --> 00:04:46,500 En canto ao que máis está no horizonte, a próxima semana, sen clase o luns. 105 00:04:46,500 --> 00:04:50,020 Pero estaremos seguinte ao por cuestionario un mércores. 106 00:04:50,020 --> 00:04:54,390 Ir á páxina de inicio do CS50 para máis detalles sobre persoas, lugares e tempos 107 00:04:54,390 --> 00:04:57,640 para todos os distintos proctoring loxística e similares, 108 00:04:57,640 --> 00:05:00,190 así como sobre a revisión sesións que están próximas. 109 00:05:00,190 --> 00:05:06,479 E entón, finalmente, de luns, o día antes da semana de descanso de Acción de Grazas, 110 00:05:06,479 --> 00:05:08,020 entender que será o noso charla final. 111 00:05:08,020 --> 00:05:11,490 Imos servir bolo e unha gran dose de emoción, esperamos. 112 00:05:11,490 --> 00:05:13,976 >> Agora, un par de outras actualizacións. 113 00:05:13,976 --> 00:05:16,350 Teña presente que o estado informe, que é realmente só 114 00:05:16,350 --> 00:05:20,430 pretende ser unha interacción informal co TF indicar orgullosa só 115 00:05:20,430 --> 00:05:23,106 como lonxe xunto co seu proxecto final que é, 116 00:05:23,106 --> 00:05:24,980 ou, polo menos, como unha sanidade comprobar que ten que 117 00:05:24,980 --> 00:05:27,250 ser que se achega punto pouco tempo despois. 118 00:05:27,250 --> 00:05:28,660 O hackathon entón resulta que. 119 00:05:28,660 --> 00:05:30,800 Entenda o hackathon non é unha oportunidade 120 00:05:30,800 --> 00:05:33,690 para iniciar o seu proxecto final, pero pretende ser unha oportunidade 121 00:05:33,690 --> 00:05:37,040 para estar no medio ou en dirección fin do seu proxecto final, 122 00:05:37,040 --> 00:05:41,030 coa implementación debido a algúns días máis tarde, seguido polo xusto CS50. 123 00:05:41,030 --> 00:05:43,330 >> Agora, a produción do CS50 equipo, un par de anos, 124 00:05:43,330 --> 00:05:46,127 montar un teaser para a feira CS50 que 125 00:05:46,127 --> 00:05:48,710 pensei que ía amosar-lle hoxe, porque foron duro no traballo 126 00:05:48,710 --> 00:05:51,930 nun Prequel para iso, un novo video que imos concluír hoxe con. 127 00:05:51,930 --> 00:05:57,694 Pero aquí está o que espera por xusta CS50 deste ano. 128 00:05:57,694 --> 00:05:58,360 [REPRODUCIÓN DE VIDEO] 129 00:05:58,360 --> 00:06:00,680 - [CELULAR tocando] 130 00:06:00,680 --> 00:06:07,624 131 00:06:07,624 --> 00:06:11,117 [MUSIC "Theme From Mission: Impossible"] 132 00:06:11,117 --> 00:08:47,065 133 00:08:47,065 --> 00:08:52,820 [FIN REPRODUCIÓN DE VIDEO] 134 00:08:52,820 --> 00:08:56,840 DAVID J. Malan: Así que é exactamente como pechamos alegacións finais do proxecto. 135 00:08:56,840 --> 00:08:59,220 Unha parella de agora teasers-- se desexa unirse a Nick aquí 136 00:08:59,220 --> 00:09:02,740 para o xantar, como é habitual, este Venres, ir a este URL aquí. 137 00:09:02,740 --> 00:09:05,530 Ademais, se quere para xuntar-se Nick ou este Nick 138 00:09:05,530 --> 00:09:08,770 ou este ou calquera Allison membros do equipo de CS50, 139 00:09:08,770 --> 00:09:11,110 entenden que, pouco tras o fin do prazo, 140 00:09:11,110 --> 00:09:13,780 CS50 xa estará recrutando para o equipo do ano que vén, 141 00:09:13,780 --> 00:09:18,130 para CAs, TFS, os deseñadores, produtores, investigadores e outros cargos 142 00:09:18,130 --> 00:09:21,790 CS50 que aquí operan en ambos fronte e detrás das escenas. 143 00:09:21,790 --> 00:09:25,482 Polo tanto, se este podería ser de interese para ti, ir a este URL aquí. 144 00:09:25,482 --> 00:09:28,190 E os alumnos máis cómodos, menos cómodo, e nalgún lugar 145 00:09:28,190 --> 00:09:31,710 entre iguais son todos benvidos e animou a se presentar a candidatura. 146 00:09:31,710 --> 00:09:34,920 >> Por iso, foi un timing perfecto que, non broma, esta mañá, cando espertei, 147 00:09:34,920 --> 00:09:37,220 Tiven ese o spam na miña caixa de entrada. 148 00:09:37,220 --> 00:09:39,420 El realmente escorregou a través do filtro de spam de Gmail 149 00:09:39,420 --> 00:09:41,659 dalgún xeito, e acabou na miña caixa de entrada real. 150 00:09:41,659 --> 00:09:43,700 E el di: "Querido caixa de correo usuario, está actualmente 151 00:09:43,700 --> 00:09:45,240 actualizado para 4 gigabytes de espazo. 152 00:09:45,240 --> 00:09:50,750 Por favor, faga login na súa conta a fin de validar E-espazo ". 153 00:09:50,750 --> 00:09:54,100 >> E despois hai este agradable azul conexión sedutora alí para premer 154 00:09:54,100 --> 00:09:59,480 para profesores e funcionarios, que, a continuación, levou-me a unha páxina marabillosas lexítimo, que 155 00:09:59,480 --> 00:10:02,300 pediume para darlles o meu nome e enderezo de correo-e e, por suposto, 156 00:10:02,300 --> 00:10:05,090 contrasinal para validar quen son e así por diante. 157 00:10:05,090 --> 00:10:09,330 Pero, claro, como sempre é o caso, chegar a esa páxina, 158 00:10:09,330 --> 00:10:11,370 e, por suposto, non hai polo menos un erro de dixitación, 159 00:10:11,370 --> 00:10:14,840 que parece ser o cravo no o caixón de calquera destes golpes. 160 00:10:14,840 --> 00:10:17,890 E nós imos publicar quizais algún outro enlaces a estes tipos de pantalla tiros 161 00:10:17,890 --> 00:10:18,473 no futuro. 162 00:10:18,473 --> 00:10:22,535 Pero espero que, a maioría das persoas en este cuarto non teñen clicked-- 163 00:10:22,535 --> 00:10:24,410 ou mesmo se premeu estes enlaces como este, 164 00:10:24,410 --> 00:10:28,040 non ir tan lonxe a punto cubrir os formularios e así por diante. 165 00:10:28,040 --> 00:10:30,210 En realidade, non hai problema se ten. 166 00:10:30,210 --> 00:10:33,410 Imos tentar corrixir isto hoxe, porque, de feito, a conversa de hoxe é 167 00:10:33,410 --> 00:10:34,450 sobre seguridade. 168 00:10:34,450 --> 00:10:36,500 >> E, de feito, un dos obxectivos de CS50 non é 169 00:10:36,500 --> 00:10:38,980 tanto a ensinar CE ou PHP ou JavaScript ou SQL 170 00:10:38,980 --> 00:10:41,610 ou calquera destes subxacente detalles de implementación. 171 00:10:41,610 --> 00:10:45,612 Pero é para capacita-lo como seres humanos só para tomar decisións máis intelixentes como el 172 00:10:45,612 --> 00:10:48,070 refírese a tecnoloxía abaixo a estrada, de xeito que, se é 173 00:10:48,070 --> 00:10:51,370 un enxeñeiro ou humanista ou científico ou calquera outro papel, 174 00:10:51,370 --> 00:10:54,970 está tomando decisións informadas sobre o seu propio uso de computación, 175 00:10:54,970 --> 00:10:56,980 ou se está nun posición de toma de decisións, 176 00:10:56,980 --> 00:10:59,250 na política, en particular, está facendo moito, 177 00:10:59,250 --> 00:11:02,770 decisións moito mellores que un chea de seres humanos de hoxe ser. 178 00:11:02,770 --> 00:11:04,830 E nós imos facelo camiño de algúns exemplos. 179 00:11:04,830 --> 00:11:09,030 >> En primeiro lugar, quedei un pouco sorprendido Recentemente, a descubrir o seguinte. 180 00:11:09,030 --> 00:11:11,120 Así, contrasinais, por suposto, son o que a maioría de nós 181 00:11:11,120 --> 00:11:18,030 protexer o noso correo electrónico data--, chat, e todo tipo de recursos como este. 182 00:11:18,030 --> 00:11:23,020 E só por un awkward-- non mostra de mans, pero miradas constrangidos de vergoña, 183 00:11:23,020 --> 00:11:26,600 cantos de vostedes usan o mesmo contrasinal en unha morea de sitios diferentes? 184 00:11:26,600 --> 00:11:28,020 >> Oh, ben, entón imos facer as mans. 185 00:11:28,020 --> 00:11:30,950 OK, entón unha morea de ti. 186 00:11:30,950 --> 00:11:33,770 Calquera que fai iso, só por iso? 187 00:11:33,770 --> 00:11:35,078 E o que? 188 00:11:35,078 --> 00:11:36,537 Si? 189 00:11:36,537 --> 00:11:39,870 Audiencia: É doado de lembrar, porque non ten que lembrar [inaudível]. 190 00:11:39,870 --> 00:11:41,703 DAVID J. Malan: Si, é fácil de lembrar. 191 00:11:41,703 --> 00:11:44,560 É un perfectamente razoable, comportamento racional, 192 00:11:44,560 --> 00:11:46,920 aínda que o risco está poñendo a si mesmo 193 00:11:46,920 --> 00:11:50,540 en nestes casos é só un ou máis destes sitios 194 00:11:50,540 --> 00:11:54,510 é vulnerable a hackers ou para inseguro ou a chave é só 195 00:11:54,510 --> 00:11:57,130 tan danado guessable, calquera pode descubrir iso. 196 00:11:57,130 --> 00:11:59,850 Non é só unha conta comprometida, pero, en teoría, calquera 197 00:11:59,850 --> 00:12:01,280 contas que ten en internet. 198 00:12:01,280 --> 00:12:04,550 Entón, sei que eu podería dicir hoxe, non utilizar a mesma contrasinal en todas as partes, 199 00:12:04,550 --> 00:12:06,450 pero iso é moito máis fácil dicir que facer. 200 00:12:06,450 --> 00:12:10,850 Pero hai técnicas para mitigar esa preocupación particular. 201 00:12:10,850 --> 00:12:14,030 >> Agora acontece, por exemplo, a usar un programa chamado 1Password. 202 00:12:14,030 --> 00:12:16,010 Outro popular é chamada LastPass. 203 00:12:16,010 --> 00:12:19,030 E unha morea de CS50 uso persoal un ou máis destes tipos de ferramentas. 204 00:12:19,030 --> 00:12:20,940 E longa historia curta, un takeaway para hoxe 205 00:12:20,940 --> 00:12:25,080 debe ser, si, pode que o mesmo contrasinal en todas as partes, 206 00:12:25,080 --> 00:12:27,260 pero é moi fácil de non facelo. 207 00:12:27,260 --> 00:12:31,260 Por exemplo, hoxe en día, sei quizais unha das miñas decenas ou centos 208 00:12:31,260 --> 00:12:31,910 de contrasinais. 209 00:12:31,910 --> 00:12:33,990 Todas as miñas outras claves son pseudo-aleatoriamente 210 00:12:33,990 --> 00:12:36,046 xerado por un destes programas aquí. 211 00:12:36,046 --> 00:12:38,420 E en poucas palabras, e mesmo aínda que a maioría destes programas 212 00:12:38,420 --> 00:12:41,487 tenden a vir con algo de custo, sería necesario instalar un programa como este, 213 00:12:41,487 --> 00:12:43,820 Vostede, entón, almacenar todo os seus nomes de usuario e contrasinais 214 00:12:43,820 --> 00:12:46,960 dentro deste programa en seu propio Mac ou PC ou outros enfeites, 215 00:12:46,960 --> 00:12:49,290 e logo, sería cifrado no ordenador 216 00:12:49,290 --> 00:12:51,599 co que é esperanza dun particularmente longo contrasinal. 217 00:12:51,599 --> 00:12:54,140 Entón, eu teño unha morea de claves para sitios individuais, 218 00:12:54,140 --> 00:12:56,390 e entón eu teño realmente un contrasinal longa que eu 219 00:12:56,390 --> 00:12:59,059 usar para desbloquear todo as outras claves. 220 00:12:59,059 --> 00:13:00,850 E o que é agradable sobre software como este é 221 00:13:00,850 --> 00:13:04,016 que, cando visita un sitio web que é pedindo o seu nome de usuario e contrasinal, 222 00:13:04,016 --> 00:13:06,304 nos días de hoxe, eu non escribir meu nome de usuario e contrasinal, 223 00:13:06,304 --> 00:13:08,970 porque, unha vez máis, eu non sei aínda que a maioría das miñas contrasinais son. 224 00:13:08,970 --> 00:13:12,180 Eu no canto bateu un teclado acceso directo, cuxo resultado 225 00:13:12,180 --> 00:13:15,990 é accionar este software para Pide pola miña contrasinal principal. 226 00:13:15,990 --> 00:13:18,780 Eu, entón, escriba que un gran contrasinal no, e logo, o navegador 227 00:13:18,780 --> 00:13:21,090 enche automaticamente o que o meu contrasinal está. 228 00:13:21,090 --> 00:13:24,960 Entón, realmente, se tomar máis nada lonxe de hoxe en canto a claves, 229 00:13:24,960 --> 00:13:28,440 estes son software que pagan a pena descarga ou investimento, polo que 230 00:13:28,440 --> 00:13:30,750 que pode polo menos pausa este costume particular. 231 00:13:30,750 --> 00:13:33,374 E se é do tipo que é usando Post-It é o como-- 232 00:13:33,374 --> 00:13:37,310 e as probabilidades son, polo menos, un de vós é-- este costume, tamén, basta dicir que, 233 00:13:37,310 --> 00:13:38,340 debe ser dobres. 234 00:13:38,340 --> 00:13:42,360 >> Agora, eu pasou a descubrir, como resultado de utilizar o software, o seguinte. 235 00:13:42,360 --> 00:13:45,690 Eu estaba pedindo un arranxo comestible, esta cesta de froitas, recentemente. 236 00:13:45,690 --> 00:13:49,380 E eu bati meu teclado especial teclado para iniciar sesión no sitio web. 237 00:13:49,380 --> 00:13:53,325 E o software desencadeou unha emerxentes que dixo, ten seguro 238 00:13:53,325 --> 00:13:55,950 Quere que eu automaticamente presentar este nome de usuario e contrasinal? 239 00:13:55,950 --> 00:13:57,690 Como a conexión é inseguro. 240 00:13:57,690 --> 00:14:01,450 >> A conexión non está usando HTTPS, por seguro, 241 00:14:01,450 --> 00:14:04,900 utilizando este protocolo coñecido como SSL, Secure Sockets Layer. 242 00:14:04,900 --> 00:14:07,640 E, de feito, se ollar para esquina superior esquerda desta web, 243 00:14:07,640 --> 00:14:12,880 é só www.ediblearrangements.com, non HTTPS, o que non é tan bo. 244 00:14:12,880 --> 00:14:15,480 >> Agora, eu estaba curious-- quizais iso é só un erro no software. 245 00:14:15,480 --> 00:14:19,240 Certamente, algún sitio como iso que moitos de nós coñecemos 246 00:14:19,240 --> 00:14:24,046 é, polo menos, o uso de cifrado ou HTTPS URL para facer o seu login. 247 00:14:24,046 --> 00:14:25,670 Entón, eu teño un pouco curioso, esta mañá. 248 00:14:25,670 --> 00:14:29,046 E eu teño as miñas habilidades CS50, Abrín Inspector Chrome. 249 00:14:29,046 --> 00:14:30,295 Non o é moita habilidade. 250 00:14:30,295 --> 00:14:32,890 É só apertar o teclado dereito teclado para abrir iso. 251 00:14:32,890 --> 00:14:34,830 E aquí está unha gran ventá de Inspector de Chrome. 252 00:14:34,830 --> 00:14:38,960 >> Pero o que era en realidade un pouco tráxico e ridículo 253 00:14:38,960 --> 00:14:40,830 eran estas dúas liñas aquí. 254 00:14:40,830 --> 00:14:44,570 Alí enriba, teña en conta a URL para que o meu nome de usuario e contrasinal 255 00:14:44,570 --> 00:14:45,530 foron sometidos. 256 00:14:45,530 --> 00:14:46,380 Déixeme ampliar. 257 00:14:46,380 --> 00:14:47,352 Foi ese aquí. 258 00:14:47,352 --> 00:14:49,060 E todo isto é tipo de desinteressante, 259 00:14:49,060 --> 00:14:54,962 excepto para a cousa toda a maneira en á esquerda, que comeza con http: //. 260 00:14:54,962 --> 00:14:57,240 E entón, OK, quizais están só enviando 261 00:14:57,240 --> 00:14:59,084 meu nome de usuario, o que é non como un gran negocio. 262 00:14:59,084 --> 00:15:00,500 Quizais o meu contrasinal enviarase máis tarde. 263 00:15:00,500 --> 00:15:02,300 Iso sería unha especie de decisión interesante deseño. 264 00:15:02,300 --> 00:15:03,100 >> Pero non tiña. 265 00:15:03,100 --> 00:15:06,130 Se, a continuación ollar para a solicitude carga, o nome de usuario e contrasinal 266 00:15:06,130 --> 00:15:08,470 Eu sent-- e eu mofaba estes ao slide-- 267 00:15:08,470 --> 00:15:10,000 foron realmente enviados en claro. 268 00:15:10,000 --> 00:15:13,792 Entón vai para o sitio en particular e solicitar un arranxo comestible como esta, 269 00:15:13,792 --> 00:15:16,750 e, de feito, ao parecer, para todo isto xa que eu fun encargar a partir deles, 270 00:15:16,750 --> 00:15:19,800 o seu nome de usuario e contrasinal vai adiante en claro. 271 00:15:19,800 --> 00:15:22,120 Entón, honestamente, iso é totalmente inaceptable. 272 00:15:22,120 --> 00:15:26,240 E é tan trivial para evitar cousas así como o deseño dun sitio web 273 00:15:26,240 --> 00:15:27,950 e como o programador dunha páxina web. 274 00:15:27,950 --> 00:15:31,020 >> Pero o takeaway aquí para nós, como usuarios de sitios 275 00:15:31,020 --> 00:15:35,700 é só para entender que todos que toma é para un proxecto estúpido 276 00:15:35,700 --> 00:15:40,010 decisión, decisión de proxecto inxustificable, de xeito que, agora, se sabe que o meu contrasinal está 277 00:15:40,010 --> 00:15:41,820 "Tinto" nesta web, probablemente 278 00:15:41,820 --> 00:15:44,654 quedou en unha morea de outros sitios que teño agora. 279 00:15:44,654 --> 00:15:46,570 E non hai moito de unha defensa contra o que 280 00:15:46,570 --> 00:15:48,301 diferente do que Chang fixo mañás. 281 00:15:48,301 --> 00:15:51,550 Foi para arranxos comestibles, que Está situado ao final da rúa, en Cambridge, 282 00:15:51,550 --> 00:15:53,430 e fisicamente compras este para nós. 283 00:15:53,430 --> 00:15:57,490 Iso era moito máis seguro do que usar o sitio neste caso. 284 00:15:57,490 --> 00:16:02,320 >> Pero o detalle para manter un ollo para fóra para é, en realidade, o que está na parte superior do seu navegador se 285 00:16:02,320 --> 00:16:02,940 alí. 286 00:16:02,940 --> 00:16:04,690 Pero aínda que pode ser un pouco erro. 287 00:16:04,690 --> 00:16:07,002 Así, outra interesante exemplo e forma de defender 288 00:16:07,002 --> 00:16:09,960 contra isto-- e de feito, imos non que first-- o xeito de defender 289 00:16:09,960 --> 00:16:12,540 contra esta é unha técnica que a xente de seguridade sería 290 00:16:12,540 --> 00:16:14,810 chamar a autenticación de dous factores. 291 00:16:14,810 --> 00:16:20,130 >> Alguén sabe cal é a solución para problemas como este significa? 292 00:16:20,130 --> 00:16:23,110 Que é autenticación de dous factores? 293 00:16:23,110 --> 00:16:27,320 Ou dito doutro xeito, como moitos de vostedes están utilizando? 294 00:16:27,320 --> 00:16:28,650 OK, entón un par de persoas tímidas. 295 00:16:28,650 --> 00:16:29,060 Pero si. 296 00:16:29,060 --> 00:16:29,976 Vin a súa man subir. 297 00:16:29,976 --> 00:16:31,510 Que é autenticación de dous factores? 298 00:16:31,510 --> 00:16:34,010 >> Audiencia: Basicamente, ademais para escribir o seu contrasinal, 299 00:16:34,010 --> 00:16:37,390 tamén ten un secundario [inaudível] enviado vía mensaxe de texto para o seu móbil 300 00:16:37,390 --> 00:16:39,460 no [inaudível]. 301 00:16:39,460 --> 00:16:40,460 DAVID J. Malan: Exactamente. 302 00:16:40,460 --> 00:16:44,150 Ademais de algunha maneira primaria de identificación, como un código, 303 00:16:44,150 --> 00:16:47,190 está invitado a un secundario factor, que é tipicamente 304 00:16:47,190 --> 00:16:49,740 algo que ten fisicamente en ti, a pesar de 305 00:16:49,740 --> 00:16:51,610 pode ser algo completamente diferente. 306 00:16:51,610 --> 00:16:54,630 E que cousa é tipicamente un cellphone estes días en que comeza 307 00:16:54,630 --> 00:16:59,200 enviou unha mensaxe de texto temporal que di "O seu código de acceso temporal é 12345." 308 00:16:59,200 --> 00:17:01,280 >> Así, ademais de miña password "carmesim," Eu tamén 309 00:17:01,280 --> 00:17:03,916 Ten que escribir o que quere o sitio ten me mandou unha mensaxe. 310 00:17:03,916 --> 00:17:06,290 Ou se ten iso cun banco ou unha conta de investimento, 311 00:17:06,290 --> 00:17:08,123 ás veces ten estes pequenos dongle que 312 00:17:08,123 --> 00:17:11,760 realmente ter un pseudo-aleatório- xerador de números construído para eles, 313 00:17:11,760 --> 00:17:15,849 pero tanto o dispositivo e banco saber que a súa semente inicial é 314 00:17:15,849 --> 00:17:19,710 de xeito que xa saben, así como o pouco código no seu pequeno chaveiro 315 00:17:19,710 --> 00:17:22,380 marchas adiante cada minuto ou dous, o cambio de valores, 316 00:17:22,380 --> 00:17:25,260 fai así que o cambio de valor no servidor da base 317 00:17:25,260 --> 00:17:28,620 de xeito que poden similarmente rexistrarse ti, non só coa súa contrasinal, 318 00:17:28,620 --> 00:17:30,024 pero con que o código temporal. 319 00:17:30,024 --> 00:17:31,690 Agora, pode realmente facer iso en Google. 320 00:17:31,690 --> 00:17:33,606 E, francamente, este é un bo costume de entrar, 321 00:17:33,606 --> 00:17:36,180 especialmente se está a usar Gmail todo o tempo nun navegador. 322 00:17:36,180 --> 00:17:39,880 Se vai a este URL aquí, o que está en os diapositivas en liña para hoxe, e despois 323 00:17:39,880 --> 00:17:43,579 prema en 2-Step Verification, mesma cousa real alí. 324 00:17:43,579 --> 00:17:45,870 Lle será solicitada a dar lles o seu número de teléfono móbil. 325 00:17:45,870 --> 00:17:49,660 E entón, a calquera hora que poñerse en Gmail, estará non só pediu 326 00:17:49,660 --> 00:17:53,480 por contrasinal, pero tamén a unha pouco de código que é enviado ao seu teléfono 327 00:17:53,480 --> 00:17:54,190 temporalmente. 328 00:17:54,190 --> 00:17:57,894 E así, sempre que teña as cookies, e sempre que non explicitamente 329 00:17:57,894 --> 00:18:00,060 logout, só ten facelo de cando en vez, 330 00:18:00,060 --> 00:18:01,870 como cando se senta a un novo ordenador. 331 00:18:01,870 --> 00:18:05,320 >> E a cabeza aquí, tamén, é que, se sentir nalgún café de estilo internet 332 00:18:05,320 --> 00:18:07,380 ou só un ordenador ordenador do amigo, mesmo 333 00:18:07,380 --> 00:18:09,710 se ese amigo maliciosamente ou inconscientemente 334 00:18:09,710 --> 00:18:13,580 ten algún keylogger instalado no seu ordenador, 335 00:18:13,580 --> 00:18:15,640 de tal forma que todo o que tipo está a ser rexistrado, 336 00:18:15,640 --> 00:18:19,170 polo menos que o segundo factor que código temporal, é efémera. 337 00:18:19,170 --> 00:18:21,630 El ou ela é quen é comprometido o ordenador 338 00:18:21,630 --> 00:18:24,890 non pode entrar en ti, posteriormente, aínda que o resto 339 00:18:24,890 --> 00:18:27,890 era vulnerable ou mesmo sen cifrado completamente. 340 00:18:27,890 --> 00:18:29,760 Facebook ten iso, tamén, que a URL aquí, 341 00:18:29,760 --> 00:18:32,070 onde pode facer clic en Iniciar Aprobacións. 342 00:18:32,070 --> 00:18:35,500 Entón, aquí, tamén, se non quero amigos para picar a xente, 343 00:18:35,500 --> 00:18:40,140 non quere ser cutucando en Facebook ou publicar actualizacións de estado para ti, 344 00:18:40,140 --> 00:18:42,479 autenticación de dous factores aquí pode ser unha cousa boa. 345 00:18:42,479 --> 00:18:44,520 E despois hai este outra técnica totalmente, 346 00:18:44,520 --> 00:18:46,853 só auditoría, que é aínda bo para nós seres humanos, 347 00:18:46,853 --> 00:18:49,950 se de dous factores proba irritante, que, É certo que pode, ou non é só 348 00:18:49,950 --> 00:18:53,930 dispoñible nalgún sitio, minimamente manter un ollo sobre se e cando 349 00:18:53,930 --> 00:18:57,650 está rexistrando en sitios si permiten que, é unha boa técnica tamén. 350 00:18:57,650 --> 00:19:01,300 Así, Facebook tamén lle dá este notificacións de inicio de sesión presentan, segundo o cal 351 00:19:01,300 --> 00:19:06,240 Facebook a calquera hora entende, hm, David ten logados nalgún ordenador ou teléfono 352 00:19:06,240 --> 00:19:09,710 que nunca vimos antes de un enderezo IP que parece raro, 353 00:19:09,710 --> 00:19:12,320 eles, polo menos, vou enviarlle unha correo electrónico para calquera enderezo de correo electrónico 354 00:19:12,320 --> 00:19:14,750 ten no arquivo, dicindo: fai este ollar desconfiado? 355 00:19:14,750 --> 00:19:17,590 Se é así, cambie o seu contrasinal inmediatamente. 356 00:19:17,590 --> 00:19:19,610 E así alí, tamén, só o comportamento da auditoría 357 00:19:19,610 --> 00:19:21,940 mesmo despois de ser comprometida, pode, polo menos 358 00:19:21,940 --> 00:19:25,980 estreitar a fiestra durante que está vulnerable. 359 00:19:25,980 --> 00:19:29,910 >> Todo ben, todas as preguntas en que o material ata agora? 360 00:19:29,910 --> 00:19:35,510 Hoxe é o día para todas súa paranoia confirmado ou negado. 361 00:19:35,510 --> 00:19:36,820 Isto é principalmente confirmou, por desgraza. 362 00:19:36,820 --> 00:19:37,210 Si? 363 00:19:37,210 --> 00:19:39,223 >> Audiencia: [inaudível] de teléfono, E se a súa quebra de teléfono, 364 00:19:39,223 --> 00:19:41,010 e entón é sempre difícil verify-- 365 00:19:41,010 --> 00:19:41,295 >> DAVID J. Malan: True. 366 00:19:41,295 --> 00:19:43,330 >> Audiencia: Ou se está nun diferentes país, e eles non permiten que 367 00:19:43,330 --> 00:19:44,505 entra no sistema porque [inaudível]. 368 00:19:44,505 --> 00:19:45,630 DAVID J. Malan: Absolutamente. 369 00:19:45,630 --> 00:19:48,780 E así que estes son o adicional custos que incorrer. 370 00:19:48,780 --> 00:19:51,040 Sempre hai este tema dun trade-off, despois de todo. 371 00:19:51,040 --> 00:19:53,748 E entón, se perder o teléfono, en caso de quebra, se está no exterior, 372 00:19:53,748 --> 00:19:56,382 ou simplemente non teñen unha sinal, como un sinal de 3G ou LTE, 373 00:19:56,382 --> 00:19:58,340 non pode realmente poder acceder. 374 00:19:58,340 --> 00:20:00,520 >> Entón, de novo, estes dous son os trade-offs. 375 00:20:00,520 --> 00:20:03,670 E, ás veces, pode crear un moito traballo para ti como resultado. 376 00:20:03,670 --> 00:20:08,130 Pero iso realmente depende, entón, en cal é o prezo esperado para ti 377 00:20:08,130 --> 00:20:10,980 é de algo ser comprometida por completo. 378 00:20:10,980 --> 00:20:15,300 >> Entón, SSL, entón, é esta técnica que todos xeralmente tomamos para concedida 379 00:20:15,300 --> 00:20:18,970 ou supoñer que hai malia que claramente non é o caso. 380 00:20:18,970 --> 00:20:23,339 E aínda pode enganar persoas, con todo, mesmo con este. 381 00:20:23,339 --> 00:20:24,630 Entón aquí está un exemplo dun banco. 382 00:20:24,630 --> 00:20:25,860 >> Este é o Bank of America. 383 00:20:25,860 --> 00:20:28,730 Hai unha morea deles en Harvard Square e alén. 384 00:20:28,730 --> 00:20:32,530 E teña en conta que, na parte superior de da pantalla, hai un, de feito, HTTPS. 385 00:20:32,530 --> 00:20:35,370 E é aínda verde e destacou a nós 386 00:20:35,370 --> 00:20:39,550 para indicar que este é de feito un sitio seguro, lexitimamente, 387 00:20:39,550 --> 00:20:41,420 ou entón fomos adestrados para crer. 388 00:20:41,420 --> 00:20:46,416 >> Agora, ademais, con todo, ter en conta que, se aumentar o zoom, 389 00:20:46,416 --> 00:20:48,790 hai esa cousa aquí, onde lle será solicitada a entrar. 390 00:20:48,790 --> 00:20:54,920 O que isto significa cadeado seguro alí, xunto do meu nome de usuario pedir? 391 00:20:54,920 --> 00:20:57,890 Isto é moi común en sitios, tamén. 392 00:20:57,890 --> 00:21:01,120 O que isto significa cadeado? 393 00:21:01,120 --> 00:21:02,453 Vostede parece que sabe. 394 00:21:02,453 --> 00:21:03,420 >> Audiencia: Iso non significa nada. 395 00:21:03,420 --> 00:21:04,230 >> DAVID J. Malan: É non quere dicir nada. 396 00:21:04,230 --> 00:21:07,790 Isto significa que o Bank of America sabe como para escribir HTML con etiquetas de imaxe, non? 397 00:21:07,790 --> 00:21:12,080 Realmente non significa nada, porque aínda que, utilizando-se o primeiro día do noso ollar 398 00:21:12,080 --> 00:21:15,760 HTML, pode codificar-se unha páxina con un fondo vermello e unha imaxe, 399 00:21:15,760 --> 00:21:18,910 como un GIF ou outros enfeites, que pasa para ollar como un cadeado. 400 00:21:18,910 --> 00:21:20,890 E, con todo, iso é super común en sitios, 401 00:21:20,890 --> 00:21:24,000 porque fomos adestrados para asumir que, oh, cadeado significa seguro, 402 00:21:24,000 --> 00:21:25,760 cando en realidade, só significa que sabe HTML. 403 00:21:25,760 --> 00:21:28,840 >> Por exemplo, de volta ao día, eu podería acabamos de poñer isto no meu sitio, 404 00:21:28,840 --> 00:21:31,660 alegando que é seguro, e pregunta, de forma eficaz, 405 00:21:31,660 --> 00:21:33,590 nomes de usuarios e contrasinais das persoas. 406 00:21:33,590 --> 00:21:36,310 Entón, mirando na dirección é polo menos unha pista mellor, 407 00:21:36,310 --> 00:21:39,580 porque que está embutido en Chrome ou calquera navegador que está a usar. 408 00:21:39,580 --> 00:21:41,470 Pero, aínda así, ás veces as cousas poden dar mal. 409 00:21:41,470 --> 00:21:45,940 E, de feito, ten non sempre pode vexa HTTPS, e moito menos en verde. 410 00:21:45,940 --> 00:21:48,126 >> Algún de vós xa ver unha pantalla como esta? 411 00:21:48,126 --> 00:21:50,000 Pode que, en realidade, A principios de outubro, 412 00:21:50,000 --> 00:21:54,740 cando eu esquezo de pagar pola nosa Certificado SSL, como se chama, 413 00:21:54,740 --> 00:21:58,400 e estabamos parecendo isto para unha ou dúas horas. 414 00:21:58,400 --> 00:22:01,830 Entón probablemente xa viu cousas así, cunha folga-through, 415 00:22:01,830 --> 00:22:05,240 como unha liña vermella, por medio de o protocolo na URL 416 00:22:05,240 --> 00:22:08,010 ou algún tipo de pantalla que é polo menos admoestando ti 417 00:22:08,010 --> 00:22:09,760 por tentar continuar. 418 00:22:09,760 --> 00:22:12,540 E Google aquí está invitando que volva para a seguridade. 419 00:22:12,540 --> 00:22:17,120 >> Agora, nese caso, iso só significa que certificado SSL que estabamos usando, 420 00:22:17,120 --> 00:22:22,220 os grandes números, matematicamente útiles que están asociados co servidor de CS50, 421 00:22:22,220 --> 00:22:23,949 xa non eran válidos. 422 00:22:23,949 --> 00:22:26,490 E, de feito, podemos simular iso, como pode no seu portátil. 423 00:22:26,490 --> 00:22:30,270 Se eu entrar en Chrome aquí, e imos a facebook.com, 424 00:22:30,270 --> 00:22:32,230 e parece que iso é seguro. 425 00:22:32,230 --> 00:22:36,910 Pero deixe-me ir adiante agora e faga clic sobre o cadeado aquí. 426 00:22:36,910 --> 00:22:40,030 >> E deixe-me ir para a conexión, Información do certificado. 427 00:22:40,030 --> 00:22:42,020 E, de feito, o que vai ve aquí é unha banda 428 00:22:42,020 --> 00:22:46,160 de detalles de nivel inferior sobre facebook.com que realmente é. 429 00:22:46,160 --> 00:22:49,380 Parece que pagaron diñeiro para unha empresa chamada quizais DigiCert alta 430 00:22:49,380 --> 00:22:54,420 Garantía de que prometeu para dicir ao resto do mundo 431 00:22:54,420 --> 00:22:57,250 que, se un navegador ve sempre un certificate-- pode pensar 432 00:22:57,250 --> 00:23:00,291 ela literalmente como un certificado que Parece aquela cousa brega na parte superior 433 00:23:00,291 --> 00:23:04,360 left-- entón facebook.com é que din son, porque todo este tempo, cando 434 00:23:04,360 --> 00:23:07,160 visita un sitio web, como cs50.harvard.edu ou facebook.com 435 00:23:07,160 --> 00:23:11,880 ou gmail.com que usan HTTPS URL, nos bastidores, 436 00:23:11,880 --> 00:23:15,190 hai este tipo de transacción pasando automaticamente 437 00:23:15,190 --> 00:23:18,060 para ti, cal facebook.com, neste caso, 438 00:23:18,060 --> 00:23:22,150 está enviando para o seu navegador o chamado certificado SSL, ou mellor, 439 00:23:22,150 --> 00:23:23,380 súa chave pública, 440 00:23:23,380 --> 00:23:25,600 e despois o seu navegador Está a utilizar a chave pública 441 00:23:25,600 --> 00:23:29,600 para enviar posteriormente cifrado tráfico de e para el. 442 00:23:29,600 --> 00:23:32,360 >> Pero hai toda esa xerarquía no mundo das empresas 443 00:23:32,360 --> 00:23:36,430 que pagar para que o faga entón testemuñar, nun sentido dixital, 444 00:23:36,430 --> 00:23:41,330 que é realmente facebook.com ou o servidor é realmente cs50.harvard.edu. 445 00:23:41,330 --> 00:23:44,580 E construído en navegadores, como Chrome e IE e Firefox, 446 00:23:44,580 --> 00:23:48,260 é unha lista de todos aqueles chamada autoridades de certificación 447 00:23:48,260 --> 00:23:51,360 que son autorizadas pola Microsoft e Google e Mozilla 448 00:23:51,360 --> 00:23:55,410 para confirmar ou negar que facebook.com é que di que é. 449 00:23:55,410 --> 00:23:57,430 Pero o problema é que esas cousas teñen prazo de caducidade. 450 00:23:57,430 --> 00:24:02,670 De feito, Facebook parece de que remata en outubro próximo, en 2015. 451 00:24:02,670 --> 00:24:06,490 >> Así, podemos realmente simular iso si ir no meu Mac para os meus Preferencias do Sistema, 452 00:24:06,490 --> 00:24:11,070 e eu entro en data e hora, e Eu entro en Data e hora aquí, 453 00:24:11,070 --> 00:24:17,190 e eu desbloquear este aqui-- sorte, non revelar o contrasinal esta tempo-- 454 00:24:17,190 --> 00:24:20,660 e agora eu baixar de desmarcar esta. 455 00:24:20,660 --> 00:24:25,660 E imos actually-- oops, iso é non tan interesante como facelo. 456 00:24:25,660 --> 00:24:30,140 Estamos literalmente no futuro agora, o que significa que este é o que 2020 é semellante. 457 00:24:30,140 --> 00:24:36,360 Se eu agora recargar o página-- imos facelo en Ingognito mode-- 458 00:24:36,360 --> 00:24:40,910 se eu actualizar a páxina, alá imos. 459 00:24:40,910 --> 00:24:45,820 >> Entón, agora, meu ordenador pensa que é de 2020, pero o meu navegador 460 00:24:45,820 --> 00:24:49,810 sabe que ese certificado desde Facebook remata, por suposto, en 2015. 461 00:24:49,810 --> 00:24:51,360 Entón, está me dando esta mensaxe vermella. 462 00:24:51,360 --> 00:24:53,550 Agora, por sorte, os navegadores como Chrome ten, de feito, 463 00:24:53,550 --> 00:24:55,480 fixo moi difícil proceder, con todo. 464 00:24:55,480 --> 00:24:57,300 Realmente queren que eu para volver para a seguridade. 465 00:24:57,300 --> 00:25:00,550 >> Se eu premer aquí en Advance, que é vai me dicir máis algúns detalles. 466 00:25:00,550 --> 00:25:02,580 E se eu realmente quero proceder, van deixar 467 00:25:02,580 --> 00:25:06,250 me ir facebook.com, que é, de novo, inseguro, en que punto 468 00:25:06,250 --> 00:25:08,310 Vou ver a páxina de inicio de Facebook, como este. 469 00:25:08,310 --> 00:25:10,080 Pero, entón, outras cousas parecen ser de rotura. 470 00:25:10,080 --> 00:25:12,825 Que probablemente está dobres neste momento? 471 00:25:12,825 --> 00:25:13,700 Audiencia: JavaScript. 472 00:25:13,700 --> 00:25:15,540 DAVID J. Malan: Como o JavaScripts e / ou CSS 473 00:25:15,540 --> 00:25:17,460 ficheiros son similarmente atopou con este erro. 474 00:25:17,460 --> 00:25:19,830 Polo tanto, esta é só unha situación malo en xeral. 475 00:25:19,830 --> 00:25:24,790 Pero o punto aquí é que, polo menos, Facebook realmente ten SSL habilitado 476 00:25:24,790 --> 00:25:30,040 para os seus servidores, como moitos sitios, facer, pero non necesariamente todos. 477 00:25:30,040 --> 00:25:33,360 >> Pero non é só o takeaway aquí. 478 00:25:33,360 --> 00:25:36,040 Acontece que, mesmo SSL Foi demostrado 479 00:25:36,040 --> 00:25:37,810 inseguro de algunha maneira. 480 00:25:37,810 --> 00:25:40,400 Entón, eu son unha especie de insinuando que SSL, bo. 481 00:25:40,400 --> 00:25:44,250 Buscar HTTPS URL, ea vida é bo, porque todo o tráfico HTTP 482 00:25:44,250 --> 00:25:46,180 e cabeceiras e contido e criptografía. 483 00:25:46,180 --> 00:25:49,560 >> Ninguén pode interceptar o medio, con excepción de un así chamado home 484 00:25:49,560 --> 00:25:50,454 No medio. 485 00:25:50,454 --> 00:25:52,870 Esta é unha técnica xeral no mundo da seguridade coñecida 486 00:25:52,870 --> 00:25:54,420 como un ataque man-in-the-middle. 487 00:25:54,420 --> 00:25:57,067 Supoña que vostede é esta pequena portátil aquí no lado esquerdo, 488 00:25:57,067 --> 00:25:59,900 e supoña que estás visitar un servidor alí na dereita, 489 00:25:59,900 --> 00:26:00,990 como facebook.com. 490 00:26:00,990 --> 00:26:03,940 >> Pero supoñamos que, en entre vostede e Facebook, 491 00:26:03,940 --> 00:26:07,750 é unha morea de outros servidores e equipos, como switches e routers, 492 00:26:07,750 --> 00:26:11,530 Servidores DNS, servidores DHCP ningún dos cales podemos controlar. 493 00:26:11,530 --> 00:26:15,280 Pode ser controlada pola Starbucks Harvard ou Comcast ou semellantes. 494 00:26:15,280 --> 00:26:18,090 Ben, supoñamos que alguén maliciosamente, na súa rede, 495 00:26:18,090 --> 00:26:20,800 entre vostede e Facebook, é capaz de dicirlle 496 00:26:20,800 --> 00:26:24,740 que, xa sabe, a dirección IP do Facebook non é o que pensa que é. 497 00:26:24,740 --> 00:26:26,250 É este IP no seu lugar. 498 00:26:26,250 --> 00:26:28,740 >> E así o seu navegador é enganado e solicitando 499 00:26:28,740 --> 00:26:30,750 tráfico doutro ordenador completo. 500 00:26:30,750 --> 00:26:35,350 Ben, supoñamos que ordenador simplemente mira para todos 501 00:26:35,350 --> 00:26:38,859 do tráfico que está pedindo Facebook e todas as páxinas web 502 00:26:38,859 --> 00:26:40,400 que está pedindo de Facebook. 503 00:26:40,400 --> 00:26:45,700 E cada vez que ve no seu tráfico un URL que comeza con HTTPS, 504 00:26:45,700 --> 00:26:49,250 dinámica, en voar, reescribir-lo como HTTP. 505 00:26:49,250 --> 00:26:53,490 E cada vez que ves un lugar cabeceira, localización colonos, 506 00:26:53,490 --> 00:26:55,930 como usamos para redireccionar o usuario, aqueles, tamén, 507 00:26:55,930 --> 00:27:00,690 se pode cambiar por este home en medio HTTPS para HTTP. 508 00:27:00,690 --> 00:27:04,170 >> Polo tanto, aínda que mesmo pode creo que está no certo Facebook, 509 00:27:04,170 --> 00:27:07,860 iso non é tan difícil para un adversario con acceso físico 510 00:27:07,860 --> 00:27:10,630 á súa rede simplemente volver páxinas para ti que 511 00:27:10,630 --> 00:27:12,650 parecido ao Gmail, que parecido ao Facebook, 512 00:27:12,650 --> 00:27:14,880 e de feito a URL é idénticas, porque son 513 00:27:14,880 --> 00:27:19,410 finxindo ter o mesmo nome de servidor por mor dalgunha explotación de DNS 514 00:27:19,410 --> 00:27:21,340 ou algún outro sistema parecido. 515 00:27:21,340 --> 00:27:23,894 E o resultado, entón, é que nós, humanos, só pode 516 00:27:23,894 --> 00:27:26,810 entender que, OK, iso parece Gmail ou, polo menos, a versión máis antiga, 517 00:27:26,810 --> 00:27:29,480 como é este foto de unha presentación máis vellos. 518 00:27:29,480 --> 00:27:34,250 Pero parece que isto-- http://www.google.com. 519 00:27:34,250 --> 00:27:37,370 >> Entón, aquí, tamén, a realidade é que como moitos de vós, 520 00:27:37,370 --> 00:27:41,290 cando vai para o Facebook ou Gmail ou calquera web e sabe un pouco de todo 521 00:27:41,290 --> 00:27:47,060 sobre SSL, como moitos de vostedes fisicamente escribir https: // e, a continuación, o sitio 522 00:27:47,060 --> 00:27:48,990 nomear, Intro. 523 00:27:48,990 --> 00:27:52,940 A maioría de nós simplemente escriba, como, CS50, prema Intro, ou F-A para Facebook 524 00:27:52,940 --> 00:27:54,770 e prema Intro, e deixalo auto-complete. 525 00:27:54,770 --> 00:27:57,620 Pero, nos bastidores, se Asistir o tráfico HTTP, 526 00:27:57,620 --> 00:28:00,090 probablemente hai un grupo enteiro estes cabezallos de localización 527 00:28:00,090 --> 00:28:03,580 que está enviando-o de Facebook para www.facebook.com 528 00:28:03,580 --> 00:28:07,250 para https://www.facebook.com. 529 00:28:07,250 --> 00:28:12,300 >> Entón, iso é unha ou máis transaccións HTTP onde a súa información é totalmente 530 00:28:12,300 --> 00:28:15,102 enviado en claro, non cifrado algunha. 531 00:28:15,102 --> 00:28:17,810 Agora, isto pode non ser tan grande tratar se todo o que estás a facer 532 00:28:17,810 --> 00:28:20,980 é acceder á páxina de inicio, non está enviando o seu nome de usuario e contrasinal. 533 00:28:20,980 --> 00:28:23,130 Pero o que é baixo o capó, especialmente 534 00:28:23,130 --> 00:28:28,130 a sitios baseados en PHP que tamén é sendo enviado a atrás e cando 535 00:28:28,130 --> 00:28:33,820 visitar algunha páxina web se que o uso do sitio web, por exemplo, PHP 536 00:28:33,820 --> 00:28:37,370 e aplica a función como pset7? 537 00:28:37,370 --> 00:28:40,840 O que estaba a ser enviado de volta e cara atrás nos seus cabeceiras HTTP que deu 538 00:28:40,840 --> 00:28:44,903 acceso a este ben Super útil global en PHP? 539 00:28:44,903 --> 00:28:45,710 >> Audiencia: cookies. 540 00:28:45,710 --> 00:28:49,020 >> DAVID J. Malan: cookies, especialmente PHP sesi ID do cookie. 541 00:28:49,020 --> 00:28:53,100 Entón lembro, se somos a, digamos, cs50.harvard.edu novo, 542 00:28:53,100 --> 00:28:56,440 pero esta vez, imos abrir o Guía Rede, e agora, aquí enriba, 543 00:28:56,440 --> 00:29:01,570 imos literalmente só tes que ir para http://cs50.harvard.edu 544 00:29:01,570 --> 00:29:03,030 e, a continuación, prema Intro. 545 00:29:03,030 --> 00:29:05,520 E, a continuación, ollar para a pantalla para abaixo aquí. 546 00:29:05,520 --> 00:29:09,600 Teña en conta que en realidade ten de volta a 301 movido permanentemente 547 00:29:09,600 --> 00:29:12,820 da mensaxe, o que significa que hai unha cabeceira de localización aquí, 548 00:29:12,820 --> 00:29:15,610 que agora está me redirixido para HTTPS. 549 00:29:15,610 --> 00:29:21,330 >> Pero o problema é que, se eu xa tiña unha cookie gravado na miña man practicamente, 550 00:29:21,330 --> 00:29:25,890 como xa discutir antes, e Eu, o tipo humano saber 551 00:29:25,890 --> 00:29:29,090 basta visitar o inseguro versión, e meu navegador leva-lo 552 00:29:29,090 --> 00:29:34,020 sobre si mesmo para demostrar que selo de man para o primeiro pedido, que é vía HTTP, 553 00:29:34,020 --> 00:29:36,610 calquera home no medio, calquera adversario no medio, 554 00:29:36,610 --> 00:29:39,380 teoricamente pode só ver estes cabezallos HTTP, só 555 00:29:39,380 --> 00:29:40,980 como se estivésemos mirando para eles aquí. 556 00:29:40,980 --> 00:29:43,310 É só cando está falando cun HTTPS 557 00:29:43,310 --> 00:29:47,780 URL que iso en si selo man obter criptografía, a la César ou Vigenère, 558 00:29:47,780 --> 00:29:50,500 pero cun algoritmo máis sofisticado completamente. 559 00:29:50,500 --> 00:29:53,611 Entón, aquí, tamén, aínda que sitios usan HTTPS, 560 00:29:53,611 --> 00:29:56,860 nós, seres humanos foron condicionados, grazas ás técnicas de auto-completar e outros, 561 00:29:56,860 --> 00:29:59,827 para sequera pensar en as potenciais implicacións. 562 00:29:59,827 --> 00:30:01,160 Agora, hai formas de evitar isto. 563 00:30:01,160 --> 00:30:03,140 Por exemplo, moitos sitios se pode configurar 564 00:30:03,140 --> 00:30:05,848 de xeito que, xa que ten ese lado selo, pode dicir ao navegador, 565 00:30:05,848 --> 00:30:07,750 este selo de man é só para conexións SSL. 566 00:30:07,750 --> 00:30:11,702 O navegador non presentará iso para min a menos que sexa mediante SSL. 567 00:30:11,702 --> 00:30:13,410 Pero moitos sitios non se preocupe con iso. 568 00:30:13,410 --> 00:30:17,260 E moitos sitios aparentemente nin sequera preocuparse SSL en todo. 569 00:30:17,260 --> 00:30:20,540 >> Entón, para saber máis sobre iso, non hai, en realidade, aínda máis lixo nesta presentación 570 00:30:20,540 --> 00:30:24,010 que un compañeiro deu a un chamado negro conferencia sombreiro un par de anos, 571 00:30:24,010 --> 00:30:26,468 onde hai aínda outro trucos maliciosos persoas teñen usado. 572 00:30:26,468 --> 00:30:28,630 Pode lembrar esta noción dun favicon, que 573 00:30:28,630 --> 00:30:32,270 é como un pequeno logotipo que é moitas veces na ventá do navegador. 574 00:30:32,270 --> 00:30:34,610 Ben, o que foi común entre os bandidos é 575 00:30:34,610 --> 00:30:36,340 para facer iconas fab que se parecen con que? 576 00:30:36,340 --> 00:30:39,054 577 00:30:39,054 --> 00:30:39,970 Audiencia: [inaudível]. 578 00:30:39,970 --> 00:30:40,280 DAVID J. Malan: Diga de novo? 579 00:30:40,280 --> 00:30:41,490 Audiencia: Os sitios. 580 00:30:41,490 --> 00:30:42,130 DAVID J. Malan: Non é un sitio web. 581 00:30:42,130 --> 00:30:43,394 Entón, favicon, minúsculo pequeno icona. 582 00:30:43,394 --> 00:30:45,560 O que sería o máis malicioso, cousa manipuladora 583 00:30:45,560 --> 00:30:47,832 pode facer o seu sitio web de icona estándar parecido? 584 00:30:47,832 --> 00:30:48,790 Audiencia: Un bloqueo verde. 585 00:30:48,790 --> 00:30:49,080 DAVID J. Malan: ¿Que é iso? 586 00:30:49,080 --> 00:30:50,160 Audiencia: Un pouco de bloqueo verde. 587 00:30:50,160 --> 00:30:51,960 DAVID J. Malan: Como un bloqueo verde, exactamente. 588 00:30:51,960 --> 00:30:55,242 Entón pode ter esa estética dun pequeno cadeado verde, 589 00:30:55,242 --> 00:30:57,950 insinuando ao mundo, oh, somos asegurar, cando, unha vez máis, todo o que significa 590 00:30:57,950 --> 00:31:00,210 é que sabe un pouco de HTML. 591 00:31:00,210 --> 00:31:02,895 Así, o secuestro de sesión refírese a exactamente isto. 592 00:31:02,895 --> 00:31:05,936 Se tes alguén que é unha especie de rastrexando as ondas neste cuarto aquí 593 00:31:05,936 --> 00:31:09,150 ou ten acceso físico a un rede e podes ver os seus cookies, 594 00:31:09,150 --> 00:31:12,152 el ou ela pode incorporarse que PHP sesi ID do cookie. 595 00:31:12,152 --> 00:31:13,860 E entón, se son experimentado o suficiente para saber 596 00:31:13,860 --> 00:31:18,200 como enviar este cookie como a súa propia selo man só copiando este valor 597 00:31:18,200 --> 00:31:20,860 e enviar as cabeceiras HTTP, alguén podería facilmente 598 00:31:20,860 --> 00:31:23,510 entrar en calquera do Facebook contas ou contas de Gmail 599 00:31:23,510 --> 00:31:27,355 ou contas de Twitter que están aquí, abertos na sala, se non está a usar SSL 600 00:31:27,355 --> 00:31:31,500 e se o sitio é non usar SSL correctamente. 601 00:31:31,500 --> 00:31:33,690 >> Así, a transición cara a outro imos. 602 00:31:33,690 --> 00:31:34,700 Así, outra historia verdadeira. 603 00:31:34,700 --> 00:31:38,680 E iso só rompe o noticias unha ou dúas semanas. 604 00:31:38,680 --> 00:31:41,520 Verizon está a facer unha cousa moi mal, 605 00:31:41,520 --> 00:31:45,110 e canto mellores a xente pode dicir, sempre que polo menos 2012, segundo a cal, 606 00:31:45,110 --> 00:31:51,550 cando acceder sitios a través dun Verizon teléfono móbil, calquera que sexa o fabricante é, 607 00:31:51,550 --> 00:31:54,150 eles foron soberbiamente, como a historia vai, 608 00:31:54,150 --> 00:31:59,890 inxectado toda a súa HTTP tráfico seu propio cabeceira HTTP. 609 00:31:59,890 --> 00:32:04,040 E ese mira cabeceira como isto-- X-UIDH. 610 00:32:04,040 --> 00:32:06,465 UID é como un único identificador ou ID do usuario. 611 00:32:06,465 --> 00:32:09,660 E X significa só que este é un costume cabeceira que non é estándar. 612 00:32:09,660 --> 00:32:11,720 >> Pero o que iso significa é que, se eu puxar arriba, 613 00:32:11,720 --> 00:32:14,640 por exemplo, calquera sitio no meu teléfono aquí- 614 00:32:14,640 --> 00:32:18,310 e eu estou usando Verizon como meu carrier-- aínda que o meu ordenador non pode 615 00:32:18,310 --> 00:32:21,110 estar enviando este HTTP cabeceira, Verizon, o máis axiña 616 00:32:21,110 --> 00:32:23,650 como o sinal chega á súa móbil torre nalgún lugar, 617 00:32:23,650 --> 00:32:28,187 foi por algún tempo a inxectar este cabeceira en todo o noso tráfico HTTP. 618 00:32:28,187 --> 00:32:29,020 Por que fan isto? 619 00:32:29,020 --> 00:32:31,920 Presuntamente, por razóns de seguimento, por razóns publicitarias. 620 00:32:31,920 --> 00:32:36,280 >> Pero a decisión de deseño imbécil aquí é que unha cabeceira HTTP, 621 00:32:36,280 --> 00:32:41,090 como vostedes saben de pset6, é recibido por calquera servidor web 622 00:32:41,090 --> 00:32:42,540 que está solicitando o tráfico de. 623 00:32:42,540 --> 00:32:44,248 Entón todo este tempo, se foi visitar 624 00:32:44,248 --> 00:32:48,019 Facebook ou Gmail ou en calquera sitio que non usa SSL todo o tempo-- 625 00:32:48,019 --> 00:32:49,810 e, de feito, aqueles dous felices agora fazer-- 626 00:32:49,810 --> 00:32:52,670 pero outros sitios que non empregue SSL todo o tempo, 627 00:32:52,670 --> 00:32:54,930 Verizon ten esencialmente plantado, forzosamente, 628 00:32:54,930 --> 00:32:58,180 un selo de man en toda a nosa mans que aínda non vemos, 629 00:32:58,180 --> 00:33:00,330 pero si, os sitios finais facer. 630 00:33:00,330 --> 00:33:02,890 E por iso non foi que difícil para calquera persoa en Internet 631 00:33:02,890 --> 00:33:05,245 executando un servidor web para entender, ooh, este é David, 632 00:33:05,245 --> 00:33:09,340 ou, ooh, este é Davin, mesmo se estamos rigoroso sobre como limpar os nosos cookies, 633 00:33:09,340 --> 00:33:10,772 por que non vén de nós. 634 00:33:10,772 --> 00:33:11,980 Está vindo transportadora. 635 00:33:11,980 --> 00:33:14,896 >> Eles fan unha investigación sobre o número de teléfono e despois dicir, oh, este é David. 636 00:33:14,896 --> 00:33:18,890 Déixeme inxectar un identificador único para que os nosos anunciantes ou quen poida 637 00:33:18,890 --> 00:33:19,850 manter o control deste. 638 00:33:19,850 --> 00:33:23,769 Entón, iso é realmente moi, moi, moi malo e horripilante. 639 00:33:23,769 --> 00:33:26,060 E gustaríame encouraged-lo a un ollo, por exemplo, 640 00:33:26,060 --> 00:33:29,950 neste URL, o que eu debería asumen En realidade, eu tente iso esta mañá. 641 00:33:29,950 --> 00:33:31,970 Eu escribín un pequeno script, poñelas neste URL, 642 00:33:31,970 --> 00:33:34,770 visitou lo coa miña propia Verizon cellphone tras conectar WiFi apagado. 643 00:33:34,770 --> 00:33:38,010 Entón tes que conectar o WiFi desactivado para que vostede está a usar 3G ou LTE ou similares. 644 00:33:38,010 --> 00:33:40,010 E entón, se visitar este URL, todo este script 645 00:33:40,010 --> 00:33:41,770 fai para vós, se desexa xogar, 646 00:33:41,770 --> 00:33:45,380 é el cospe o que as cabeceiras HTTP o teléfono está enviando para o noso servidor. 647 00:33:45,380 --> 00:33:48,510 E eu, de feito, na xustiza, fixo non ver iso, esta mañá, que 648 00:33:48,510 --> 00:33:51,430 me fai pensar é local Torre de móbil que estaba ligado ao 649 00:33:51,430 --> 00:33:55,160 ou outros enfeites non está facendo iso, ou que teñen recuou de facelo temporalmente. 650 00:33:55,160 --> 00:33:58,160 Pero, para obter máis información, a cabeza para este URL aquí. 651 00:33:58,160 --> 00:34:00,680 >> E agora a isto-- este cómico pode ter sentido. 652 00:34:00,680 --> 00:34:03,530 653 00:34:03,530 --> 00:34:04,030 Non? 654 00:34:04,030 --> 00:34:04,530 Está ben. 655 00:34:04,530 --> 00:34:05,390 Todo correcto. 656 00:34:05,390 --> 00:34:06,310 Que morreu. 657 00:34:06,310 --> 00:34:07,240 Todo correcto. 658 00:34:07,240 --> 00:34:11,330 >> Entón imos dar un ollo a algúns dos máis ataques, aínda que só para aumentar a concienciación sobre 659 00:34:11,330 --> 00:34:13,179 e, entón, ofrecer unha parella posibles solucións 660 00:34:13,179 --> 00:34:14,430 de xeito que é todo o máis atento. 661 00:34:14,430 --> 00:34:17,305 Este falamos o outro día, pero non deu un nome a el. 662 00:34:17,305 --> 00:34:22,360 É unha falsificación de solicitude entre sitios, o que é un xeito elegante de dicir excesivamente 663 00:34:22,360 --> 00:34:26,489 ti enganar un usuario a facer clic en unha URL como esta, que os trucos 664 00:34:26,489 --> 00:34:28,280 nalgún comportamento que que non tiña intención. 665 00:34:28,280 --> 00:34:30,710 >> Neste caso, esta parece estar tentando me enganar 666 00:34:30,710 --> 00:34:32,920 en vender miñas accións de Google. 667 00:34:32,920 --> 00:34:36,810 E iso terá éxito se Eu, o programador de pset7, 668 00:34:36,810 --> 00:34:40,409 non ter feito o que? 669 00:34:40,409 --> 00:34:44,739 Ou mellor, de forma máis xeral, o que casos son vulnerable a un ataque 670 00:34:44,739 --> 00:34:49,460 se alguén trucos outro usuario a premer nunha URL como esta? 671 00:34:49,460 --> 00:34:49,960 Si? 672 00:34:49,960 --> 00:34:52,500 >> Audiencia: Non distinguen entre get e POST. 673 00:34:52,500 --> 00:34:52,760 >> DAVID J. Malan: Good. 674 00:34:52,760 --> 00:34:54,850 Se non distinguir entre get e POST, 675 00:34:54,850 --> 00:34:57,950 e, de feito, se permitimos Get a vender cousas, 676 00:34:57,950 --> 00:35:00,284 estamos invitando este tipo de ataque. 677 00:35:00,284 --> 00:35:01,950 Pero aínda pode mitigá-la un pouco. 678 00:35:01,950 --> 00:35:04,283 E eu comentei, creo, a semana pasada que a Amazon polo menos 679 00:35:04,283 --> 00:35:08,180 intenta paliar ese cunha técnica iso é moi sinxelo. 680 00:35:08,180 --> 00:35:11,860 O que sería unha cousa intelixente facer estar no seu servidor, 681 00:35:11,860 --> 00:35:14,652 no canto de só vender cegamente calquera que sexa símbolo o usuario escribe en? 682 00:35:14,652 --> 00:35:15,984 Audiencia: Confirmación das sortes? 683 00:35:15,984 --> 00:35:19,320 DAVID J. Malan: Unha pantalla de confirmación, algo que implica a interacción humana 684 00:35:19,320 --> 00:35:21,300 de xeito que eu son obrigado a facer o xuízo, 685 00:35:21,300 --> 00:35:23,930 aínda que eu inxenuamente premeu unha ligazón que parece con isto 686 00:35:23,930 --> 00:35:27,760 e me levou para a pantalla do móbil, o menos me pediu para confirmar ou negar. 687 00:35:27,760 --> 00:35:32,460 Pero non un ataque inusual, especialmente nos chamados phishing ou spam-like 688 00:35:32,460 --> 00:35:33,280 ataques. 689 00:35:33,280 --> 00:35:34,890 >> Agora, este é un pouco máis sutil. 690 00:35:34,890 --> 00:35:37,060 Este é un cross-site scripting ataque. 691 00:35:37,060 --> 00:35:39,250 E isto ocorre se o sitio non está a usar 692 00:35:39,250 --> 00:35:41,260 o equivalente a htmlspecialchars. 693 00:35:41,260 --> 00:35:45,160 E el está tomando a entrada do usuario e só cegamente inxecta-lo nunha páxina web, 694 00:35:45,160 --> 00:35:48,170 como con impresión ou eco, com-- novamente-- fóra chamar algo 695 00:35:48,170 --> 00:35:49,710 como htmlspecialchars. 696 00:35:49,710 --> 00:35:52,602 >> Entón, supoña que o sitio en cuestión é vulnerable.com. 697 00:35:52,602 --> 00:35:55,620 E supoña que acepta un parámetro chamado q. 698 00:35:55,620 --> 00:35:59,040 Olle para o que pode ocorrer se realmente, un cara mal, 699 00:35:59,040 --> 00:36:02,360 escribir ou enganar un usuario en visitar unha URL que se parece isso- 700 00:36:02,360 --> 00:36:05,900 q = tag script aberto, pechado etiqueta script. 701 00:36:05,900 --> 00:36:08,480 E de novo, eu estou supondo que non é vulnerable.com 702 00:36:08,480 --> 00:36:11,740 vai virar perigoso personaxes como soportes abertos 703 00:36:11,740 --> 00:36:15,570 en entidades HTML, o E comercial, L-T, cousa comas 704 00:36:15,570 --> 00:36:17,090 que pode ter visto antes. 705 00:36:17,090 --> 00:36:18,900 >> Pero o que é a escritura ou código JavaScript 706 00:36:18,900 --> 00:36:21,160 Estou tentando enganar un usuario en execución? 707 00:36:21,160 --> 00:36:25,420 Ben, document.location refire ao enderezo actual do meu navegador. 708 00:36:25,420 --> 00:36:29,400 Entón, se eu fago document.location =, iso me permite redireccionar ao usuario 709 00:36:29,400 --> 00:36:30,830 en JavaScript para outro sitio. 710 00:36:30,830 --> 00:36:34,290 É como a nosa función PHP redireccionar, pero feito en JavaScript. 711 00:36:34,290 --> 00:36:35,900 >> Onde estou tentando enviar o usuario? 712 00:36:35,900 --> 00:36:40,110 Ben, aparentemente, badguy.com/log.php, que é algún guión, ao parecer, 713 00:36:40,110 --> 00:36:43,530 o bandido escribiu, que leva un parámetro chamado biscoito. 714 00:36:43,530 --> 00:36:46,790 >> E teña en conta, o que eu parecen ser concatenando 715 00:36:46,790 --> 00:36:49,190 ao final dese sinal de igualdade? 716 00:36:49,190 --> 00:36:52,030 Ben, algo que di document.cookie. 717 00:36:52,030 --> 00:36:53,320 Non falamos sobre iso. 718 00:36:53,320 --> 00:36:55,730 Pero acontece que, en JavaScript, así como no PHP, 719 00:36:55,730 --> 00:36:59,770 Podes acceder todos os boliñas que o seu navegador está realmente a usar. 720 00:36:59,770 --> 00:37:02,180 >> Polo tanto, o efecto dun presente liña de código, se un usuario 721 00:37:02,180 --> 00:37:06,440 é levado a facer clic nesta ligazón eo sitio vulnerable.com non 722 00:37:06,440 --> 00:37:10,000 escapar con htmlspecialchars, é que ten só de forma eficaz 723 00:37:10,000 --> 00:37:13,660 cargado para log.php todos os cookies. 724 00:37:13,660 --> 00:37:17,300 E iso non é sempre que problemática, salvo se un deses boliñas 725 00:37:17,300 --> 00:37:20,040 é a súa ID de sesión, o seu o chamado selo de man, que 726 00:37:20,040 --> 00:37:26,470 significa badguy.com pode facer o seu propio Solicitudes HTTP, enviando a mesma man 727 00:37:26,470 --> 00:37:30,210 selo, que mesmo cabeceira de cookie, e rexistrar en calquera sitio 728 00:37:30,210 --> 00:37:33,680 estabas a visitar, o que, neste caso, é vulnerable.com. 729 00:37:33,680 --> 00:37:35,940 É un cross-site scripting ataque, no sentido 730 00:37:35,940 --> 00:37:38,130 que está tipo de enganar un lugar para contar 731 00:37:38,130 --> 00:37:43,560 outro sitio sobre unha información non debe, de feito, teñen acceso. 732 00:37:43,560 --> 00:37:46,510 >> Todo ben, preparado para unha outro detalle preocupante? 733 00:37:46,510 --> 00:37:49,970 Todo ben, o mundo é un lugar asustado, lexitimamente así. 734 00:37:49,970 --> 00:37:52,480 Aquí está unha simple Exemplo JavaScript que é 735 00:37:52,480 --> 00:37:54,847 no código fonte de hoxe chamado xeolocalización 0 e 1. 736 00:37:54,847 --> 00:37:56,930 E hai unha parella walkthroughs en liña para iso. 737 00:37:56,930 --> 00:37:59,920 >> E iso fai o seguinte, se eu abrir esta páxina web en Chrome. 738 00:37:59,920 --> 00:38:04,590 En primeiro lugar, el non fai nada. 739 00:38:04,590 --> 00:38:07,300 OK, imos tentar iso de novo. 740 00:38:07,300 --> 00:38:07,800 Oh. 741 00:38:07,800 --> 00:38:10,990 742 00:38:10,990 --> 00:38:13,370 Non, debe facer algo. 743 00:38:13,370 --> 00:38:16,500 OK, stand by. 744 00:38:16,500 --> 00:38:18,200 >> Imos tentar que unha vez máis. 745 00:38:18,200 --> 00:38:21,285 746 00:38:21,285 --> 00:38:21,785 [Inaudível] 747 00:38:21,785 --> 00:38:26,941 748 00:38:26,941 --> 00:38:29,444 Ah, vale, non sei por que as-- oh, o aparello 749 00:38:29,444 --> 00:38:31,360 probablemente perdeu internet acceso por algún motivo. 750 00:38:31,360 --> 00:38:32,840 Todo ben, entón pasa comigo tamén. 751 00:38:32,840 --> 00:38:34,650 >> Todo ben, entón aviso o que está pasando aquí. 752 00:38:34,650 --> 00:38:37,300 Esta enigmática aparencia URL, que é só unha das servidor CS50, 753 00:38:37,300 --> 00:38:41,130 quere usar o ordenador de localización, como físicamente el significa. 754 00:38:41,130 --> 00:38:45,160 E se, en realidade, clic en Permitir, imos ver o que acontece. 755 00:38:45,160 --> 00:38:49,030 Ao parecer, esta é a miña latitude actual e lonxitudinal coordina baixo 756 00:38:49,030 --> 00:38:51,660 a un moi bo danado resolución. 757 00:38:51,660 --> 00:38:53,310 >> Así como eu chegar a esa? 758 00:38:53,310 --> 00:38:57,620 Como é que esta web, como servidor CS50, saber fisicamente onde no mundo 759 00:38:57,620 --> 00:38:59,600 Estou, e moito menos con esa precisión. 760 00:38:59,600 --> 00:39:01,990 Ben, acontece out-- imos só mirar para source-- da páxina 761 00:39:01,990 --> 00:39:05,280 iso aquí é unha morea de HTML en o fondo que ten o primeiro isto-- 762 00:39:05,280 --> 00:39:09,080 onload corpo = "xeograficamente" - só unha función que escribín. 763 00:39:09,080 --> 00:39:11,840 >> E eu digo, na carga a páxina, chamar xeograficamente. 764 00:39:11,840 --> 00:39:13,750 E non hai nada no corpo, porque 765 00:39:13,750 --> 00:39:16,270 na cabeza da páxina, entender o que eu teño aquí. 766 00:39:16,270 --> 00:39:18,090 Aquí está a miña función xeograficamente. 767 00:39:18,090 --> 00:39:23,560 E este é só algún erro checking-- se o tipo de navigator.geolocation 768 00:39:23,560 --> 00:39:24,490 non é indefinido. 769 00:39:24,490 --> 00:39:26,240 Entón JavaScript ten este mecanismo onde 770 00:39:26,240 --> 00:39:28,270 pódese dicir, cal é o tipo desta variable? 771 00:39:28,270 --> 00:39:30,790 E se non é undefined-- isto significa que é algún value-- 772 00:39:30,790 --> 00:39:35,940 Vou chamar navigator.geolocation.getCurrentPosition 773 00:39:35,940 --> 00:39:37,230 e despois retorno. 774 00:39:37,230 --> 00:39:37,750 >> ¿Que é iso? 775 00:39:37,750 --> 00:39:39,916 Así, en xeral, o que é un retorno, só para quedar claro? 776 00:39:39,916 --> 00:39:42,890 Pode encontrar este xa en pset8. 777 00:39:42,890 --> 00:39:44,790 Callback é un xenérico prazo para facer o que? 778 00:39:44,790 --> 00:39:48,430 779 00:39:48,430 --> 00:39:49,554 Sinto como se só eu hoxe. 780 00:39:49,554 --> 00:39:50,470 Audiencia: [inaudível]. 781 00:39:50,470 --> 00:39:53,322 782 00:39:53,322 --> 00:39:55,280 DAVID J. Malan: Exactamente, unha función que debe 783 00:39:55,280 --> 00:39:57,330 ser chamado só cando temos datos. 784 00:39:57,330 --> 00:40:01,510 Esta chamada ao navegador, buscar o meu actual posición, pode levar unha milésima de segundo, 785 00:40:01,510 --> 00:40:02,720 isto pode levar un minuto. 786 00:40:02,720 --> 00:40:06,960 O que isto significa é que estamos dicindo o método get getCurrentPosition, 787 00:40:06,960 --> 00:40:09,910 chamar esta función de retorno de chamada, que eu literalmente chamado callback 788 00:40:09,910 --> 00:40:13,150 para sinxeleza, o que ao parecer, é este aquí. 789 00:40:13,150 --> 00:40:16,290 >> E o xeito getCurrentPosition funciona, simplemente lendo a documentación 790 00:40:16,290 --> 00:40:19,540 para algún código JavaScript en liña, é que el chama de que a chamada de retorno de chamada 791 00:40:19,540 --> 00:40:23,220 función, pasa-lo en que un obxecto JavaScript, 792 00:40:23,220 --> 00:40:28,970 no interior dos cales é .coords.latitude e .coords.longitude, 793 00:40:28,970 --> 00:40:32,140 que é exactamente como, entón, cando actualizar esta páxina, 794 00:40:32,140 --> 00:40:33,985 Eu era capaz de ver a miña localización aquí. 795 00:40:33,985 --> 00:40:35,610 Agora, polo menos, había unha defensa aquí. 796 00:40:35,610 --> 00:40:37,820 Antes de que eu visitei esta páxina, cando realmente funciona, 797 00:40:37,820 --> 00:40:40,935 o que eu estaba polo menos solicitada? 798 00:40:40,935 --> 00:40:42,180 >> Audiencia: [inaudível]. 799 00:40:42,180 --> 00:40:44,200 >> DAVID J. Malan: Si ou Não-- facer quere permitir ou negar iso? 800 00:40:44,200 --> 00:40:46,630 Pero creo que, tamén, sobre os hábitos Vostedes probablemente teñen adoptado, 801 00:40:46,630 --> 00:40:48,330 tanto nos seus teléfonos e os seus navegadores. 802 00:40:48,330 --> 00:40:50,390 Moitos de nós, eu incluídos, son probablemente 803 00:40:50,390 --> 00:40:54,960 moi predispostos estes dias-- ti ver un emerxente, só Intro, OK, aprobar, 804 00:40:54,960 --> 00:40:55,730 Permitir. 805 00:40:55,730 --> 00:40:59,070 E cada vez máis, pode pór se en perigo por estas razóns. 806 00:40:59,070 --> 00:41:03,280 >> Entón, en realidade, non había esa marabillosa erro algúns anos ago-- ou falta de feature-- 807 00:41:03,280 --> 00:41:08,250 iTunes que tiña uns anos, polo que, se tivese un teléfono móbil 808 00:41:08,250 --> 00:41:12,000 e foi un iPhone, e deixou a súa casa 809 00:41:12,000 --> 00:41:15,600 e, polo tanto, viaxou ao redor do mundo ou do barrio, todo este tempo, 810 00:41:15,600 --> 00:41:17,819 o teléfono estaba rexistrando onde está a través do GPS. 811 00:41:17,819 --> 00:41:20,610 E, de feito, esta é divulgada, ea xente esperan que este tipo de empresa. 812 00:41:20,610 --> 00:41:21,930 O teléfono sabe onde está. 813 00:41:21,930 --> 00:41:24,990 Pero o problema era que, cando estaba facendo unha copia de seguridade 814 00:41:24,990 --> 00:41:29,260 o teléfono para iTunes-- este era antes os días de iCloud, o que é mellor para o 815 00:41:29,260 --> 00:41:33,960 ou para worse-- os datos foron almacenados sendo en iTunes, completamente sen cifrado. 816 00:41:33,960 --> 00:41:37,370 Polo tanto, se ten unha familia ou compañeiros de cuarto ou un veciño mal intencionado que é 817 00:41:37,370 --> 00:41:41,430 curioso literalmente todo GPS coordinar xa foi para, 818 00:41:41,430 --> 00:41:43,300 el ou ela podería só sentir-se en iTunes, executa 819 00:41:43,300 --> 00:41:46,540 algún programa que foi libremente dispoñibles, e producir mapas como este. 820 00:41:46,540 --> 00:41:48,680 >> En realidade, iso é o que eu producido do meu propio teléfono. 821 00:41:48,680 --> 00:41:49,380 Eu chamei. 822 00:41:49,380 --> 00:41:51,670 E parece que, con base sobre os puntos azuis alí, 823 00:41:51,670 --> 00:41:53,900 que é onde a maioría dos as coordenadas GPS 824 00:41:53,900 --> 00:41:56,680 rexistrado polo iTunes que eu foi no Nordeste alí. 825 00:41:56,680 --> 00:42:00,030 Pero, ao parecer, viaxou ao redor algo, mesmo dentro de Massachusetts. 826 00:42:00,030 --> 00:42:01,950 >> Entón, iso é o Porto de Boston alí na dereita. 827 00:42:01,950 --> 00:42:04,430 Este é un tipo de Cambridge e Boston, onde é máis escuro. 828 00:42:04,430 --> 00:42:07,660 E de cando en vez, eu correría cometido a unha xeografía maior. 829 00:42:07,660 --> 00:42:11,464 >> Pero iTunes, durante anos, tivo, como mellor Podería dicir, todos estes datos en min. 830 00:42:11,464 --> 00:42:13,380 Podería dicir que, Aquel ano, eu estaba realmente 831 00:42:13,380 --> 00:42:17,990 viaxando moito entre Boston e Nova York, indo e volvendo 832 00:42:17,990 --> 00:42:18,830 e cara atrás e cara adiante. 833 00:42:18,830 --> 00:42:22,660 E, de feito, este é me en Amtrak, de volta e para adiante, para atrás e para adiante, un pouco. 834 00:42:22,660 --> 00:42:25,970 Todo iso foi rexistrado e almacenados criptografía no meu ordenador 835 00:42:25,970 --> 00:42:28,520 para calquera que pode ter acceso ó meu ordenador. 836 00:42:28,520 --> 00:42:29,480 >> Esta foi preocupante. 837 00:42:29,480 --> 00:42:32,180 Non sabía por que eu estaba en Pensilvania, ou porque 838 00:42:32,180 --> 00:42:35,277 meu teléfono estaba en Pensilvania, aparentemente moi densa. 839 00:42:35,277 --> 00:42:37,360 E entón, finalmente, eu olhei na miña Gcal, e, oh, I 840 00:42:37,360 --> 00:42:39,880 visitou CMU, Carnegie Mellon, no momento. 841 00:42:39,880 --> 00:42:42,031 E Ufa, que especie de explicou que blip. 842 00:42:42,031 --> 00:42:43,780 E entón, se aumentar o zoom a máis, pode 843 00:42:43,780 --> 00:42:46,850 vexa visitei San Francisco unha ou máis veces, a continuación, 844 00:42:46,850 --> 00:42:51,140 e eu aínda tiña unha escala en que Creo que é Veigas, alí en baixo. 845 00:42:51,140 --> 00:42:54,120 Entón, todo isso- só un escala, no aeroporto. 846 00:42:54,120 --> 00:42:56,420 >> Audiencia: [Risas] 847 00:42:56,420 --> 00:43:00,760 >> Entón, iso é só para dicir que estes problemas, honestamente, son omnipresentes. 848 00:43:00,760 --> 00:43:02,780 E iso só se sente cada vez máis como hai 849 00:43:02,780 --> 00:43:05,810 máis e máis deste que está a ser difundido, o que probablemente é unha cousa boa. 850 00:43:05,810 --> 00:43:08,390 Eu atrévome a dicir, o mundo non é empeorando no software de gravación. 851 00:43:08,390 --> 00:43:10,520 Estamos ficando cada vez mellor, esperanza, en entender 852 00:43:10,520 --> 00:43:13,037 quão ruim determinado software é que estamos a usar. 853 00:43:13,037 --> 00:43:14,870 E, por sorte, algúns empresas empezan 854 00:43:14,870 --> 00:43:17,080 de ser responsable por iso. 855 00:43:17,080 --> 00:43:19,080 >> Pero que tipo de defensas pode ter presente? 856 00:43:19,080 --> 00:43:23,610 Polo tanto, ademais de xerentes de contrasinal, como 1Password e LastPass e outros, 857 00:43:23,610 --> 00:43:27,340 ademais de só cambiar as súas claves e chegando cos aleatorios 858 00:43:27,340 --> 00:43:29,700 empregando o software como diso, tamén pode probar 859 00:43:29,700 --> 00:43:31,700 o mellor que poida para cifrar todo o tráfico 860 00:43:31,700 --> 00:43:34,680 para, polo menos, limitar a zona de unha ameaza. 861 00:43:34,680 --> 00:43:38,100 Así, por exemplo, como afiliados de Harvard, todo o que pode ir vpn.harvard.edu 862 00:43:38,100 --> 00:43:41,010 e faga login co seu ID e PIN Harvard. 863 00:43:41,010 --> 00:43:49,350 E iso vai establecer un seguro conexión entre vostede e Harvard. 864 00:43:49,350 --> 00:43:51,150 >> Agora, iso non fai necesariamente protexe-lo 865 00:43:51,150 --> 00:43:54,360 contra calquera ameazas que están entre Harvard e en Facebook ou Harvard 866 00:43:54,360 --> 00:43:54,861 e Gmail. 867 00:43:54,861 --> 00:43:56,735 Pero se está sentado nun aeroporto ou se está 868 00:43:56,735 --> 00:43:59,260 sentado no Starbucks ou está sentando-se na casa dun amigo, 869 00:43:59,260 --> 00:44:02,730 e realmente non confiar neles ou o seu configuración do seu router doméstico, 870 00:44:02,730 --> 00:44:04,970 polo menos pode establecer unha conexión segura 871 00:44:04,970 --> 00:44:10,260 a unha entidade como este lugar que é probablemente un pouco mellor asegurada 872 00:44:10,260 --> 00:44:12,437 que algo así como un Starbucks ou semellantes. 873 00:44:12,437 --> 00:44:14,270 E o que iso fai é establece, unha vez máis, 874 00:44:14,270 --> 00:44:16,300 cifrado entre vostede e punto final. 875 00:44:16,300 --> 00:44:17,880 >> Aínda apreciador son cousas como esta. 876 00:44:17,880 --> 00:44:20,000 Entón, algúns de vós xa pode estar familiarizado con Tor, 877 00:44:20,000 --> 00:44:22,930 que é este tipo de anonimização rede, no que moitas persoas, 878 00:44:22,930 --> 00:44:26,640 se executar este programa, ruta posteriormente a súa Internet 879 00:44:26,640 --> 00:44:27,990 tráfico a través dun ao outro. 880 00:44:27,990 --> 00:44:31,460 Así, o punto máis curto é non máis entre A e B. 881 00:44:31,460 --> 00:44:35,850 Pero pode ser todo o poñer de xeito que está esencialmente 882 00:44:35,850 --> 00:44:40,742 cubrindo unha de pistas e deixando menos dun rexistro acerca de onde a HTTP 883 00:44:40,742 --> 00:44:43,950 tráfico veu, porque vai a través de unha chea de outras persoas 884 00:44:43,950 --> 00:44:45,990 portátiles ou escritorios, para mellor ou para peor. 885 00:44:45,990 --> 00:44:48,180 >> Pero aínda que non é unha cousa infalible. 886 00:44:48,180 --> 00:44:51,560 Algúns de vostedes poden lembrar do ano pasado o susto que foi chamado no ollo. 887 00:44:51,560 --> 00:44:54,662 E foi Rastrexar finalmente a unha usuario que usara esta rede aquí. 888 00:44:54,662 --> 00:44:57,870 E a captura alí, se ben me lembra, é, se non hai que moitas outras persoas 889 00:44:57,870 --> 00:45:02,190 usando un software como este ou usando esta porta e protocolo, 890 00:45:02,190 --> 00:45:06,250 iso non é tan difícil para unha rede de mesmo descubrir quen, con certa probabilidade, 891 00:45:06,250 --> 00:45:08,950 era, en realidade anonimato o seu tráfico. 892 00:45:08,950 --> 00:45:12,030 >> E eu non sei se aqueles eran o datos reais en cuestión. 893 00:45:12,030 --> 00:45:15,400 Pero, certamente, entende que ningún dos estas son solucións infalíbeis, así. 894 00:45:15,400 --> 00:45:18,820 E o obxectivo aquí hoxe é para menos pensar sobre estas cousas 895 00:45:18,820 --> 00:45:23,140 e chegando con técnicas de defenderse contra eles. 896 00:45:23,140 --> 00:45:28,858 Calquera dúbida sobre todas as ameazas que esperan por vós aí fóra, e aquí? 897 00:45:28,858 --> 00:45:29,358 Si? 898 00:45:29,358 --> 00:45:29,858 899 00:45:29,858 --> 00:45:31,793 Audiencia: Como facer seguro Esperamos que a media 900 00:45:31,793 --> 00:45:35,210 [? sitio para ser ,?] como o proxecto media CS50? 901 00:45:35,210 --> 00:45:38,530 >> DAVID J. Malan: O media proxecto CS50? 902 00:45:38,530 --> 00:45:43,190 É sempre demostrou que todos os anos algúns proxectos finais CS50 non son 903 00:45:43,190 --> 00:45:44,530 particularmente seguro. 904 00:45:44,530 --> 00:45:47,940 Xeralmente, é un compañeiro de cuarto é hallmate que as cifras esta fóra 905 00:45:47,940 --> 00:45:51,200 enviando peticións ao seu proxecto. 906 00:45:51,200 --> 00:45:55,230 >> Answer-- Curto cantas sitios son seguros? 907 00:45:55,230 --> 00:45:57,450 Estou mexendo con anomalías de hoxe. 908 00:45:57,450 --> 00:46:00,640 Como se fose só azar que eu entender que esta web 909 00:46:00,640 --> 00:46:03,390 Fun solicitar estes francamente deliciosos arranxos de-- 910 00:46:03,390 --> 00:46:05,348 e eu non estou seguro que vou deixar de usar o seu sitio; 911 00:46:05,348 --> 00:46:08,030 Eu só podería cambiar a miña contrasinal máis regularly-- 912 00:46:08,030 --> 00:46:11,320 non está claro o no; vulnerables todos estes various-- 913 00:46:11,320 --> 00:46:12,970 este é realmente cuberto de chocolate. 914 00:46:12,970 --> 00:46:16,172 915 00:46:16,172 --> 00:46:19,130 A resposta curta, eu non podo responder a esta de forma eficaz, ademais de dicir que 916 00:46:19,130 --> 00:46:22,150 Non foi tan difícil para min atopar algúns destes exemplos só 917 00:46:22,150 --> 00:46:24,040 en prol da discusión en clase. 918 00:46:24,040 --> 00:46:26,456 E só manter un ollo en Google News e outros recursos 919 00:46:26,456 --> 00:46:29,590 traerá aínda máis de este tipo de cousas á luz. 920 00:46:29,590 --> 00:46:32,460 >> Todo ben, imos concluír con este precuela 921 00:46:32,460 --> 00:46:36,870 que o equipo de CS50 preparou para ti en anticipación do CS50 hackathon. 922 00:46:36,870 --> 00:46:39,763 E no seu camiño cara a fóra nunha momento, a froita será servido. 923 00:46:39,763 --> 00:46:40,429 [REPRODUCIÓN DE VIDEO] 924 00:46:40,429 --> 00:46:43,595 [MUSIC Fergie, Q Tip, E GoonRock, "A Festinha nunca matou NINGUÉN (ALL 925 00:46:43,595 --> 00:46:44,373 WE got) "] 926 00:46:44,373 --> 00:48:08,880 927 00:48:08,880 --> 00:48:13,467 >> - [Ronco] 928 00:48:13,467 --> 00:48:14,300 [FIN REPRODUCIÓN DE VIDEO] 929 00:48:14,300 --> 00:48:15,420 DAVID J. Malan: Isto é todo para CS50. 930 00:48:15,420 --> 00:48:16,544 Imos velo o mércores. 931 00:48:16,544 --> 00:48:20,670 932 00:48:20,670 --> 00:48:25,840 [MÚSICA - Skrillex, "Imma" probalo "] 933 00:48:25,840 --> 00:51:47,776