[Powered by Google Translate] [Wiki 10] [David J. Malan] [Chuo Kikuu cha Harvard] [Hii ni CS50.] [CS50.TV] Yote ya haki! Hii ni CS50 lakini si kwa muda mrefu. Huu ni mwanzo wa wiki 10. Jumatano tuna Quiz wetu, na kisha Jumatatu ijayo tuna baadhi ya keki celebratory kama sisi kuja kamili mduara njia yote nyuma kutoka sifuri wiki. Leo hii, tunazungumzia kuhusu moja ya mada favorite, ukweli kuwa habari - ile ya usalama na faragha na matokeo ya aina ya vifaa na programu kwamba sisi wote kutumia siku hizi. Kwa kuwa waaminifu, kuna mengi ya vitisho huko nje kwamba kama wewe si kweli paused kufikiri juu yao, wao uko kweli pretty ngumu. Uchunguzi katika kumweka - kama yoyote ya umewahi kupakuliwa kipande cha programu mbali ya mtandao na imewekwa kwenye kompyuta yako, ve kushiriki katika shahada kubwa ya uaminifu, haki? Hakuna kitu baada ya kuzuiwa Skype, au Chrome, au kipande cha programu ve imewekwa kwenye kompyuta yako, kutoka tu kufuta yote ya files kwenye gari yako ngumu; kupakia wote wa files kwenye gari yako ngumu kwa server baadhi guy mbaya ya; kutokana na kusoma yote ya barua pepe yako; kutoka intercepting yote ya ujumbe wako papo. Kwa sababu ukweli ni leo na mifumo ya kisasa zaidi ya uendeshaji hapo kweli ni si mengi ya ukuta kati ya mipango ya programu ambayo sisi kufunga, na wewe na mimi ni pretty much tu aina ya kuvuka vidole yetu na kuchukua imani kwamba programu sisi kupakuliwa kwa bure, au kwamba jambo hilo ni 99 senti, ni kweli kabisa benign. Lakini kama tumeona kupitia C, na sasa PHP na JavaScript, na uwezo huu kueleza wenyewe programatically, unaweza kufanya zaidi kitu chochote unataka na mpango kwamba mtumiaji mwenyewe au mwenyewe na la kufanya. Hivyo, leo sisi kuzingatia mada kwamba - si tu baadhi ya vitisho lakini pia ulinzi. Hakika, katika dunia ya usalama kwa ujumla, kuna aina ya mchezo huu cat-na-panya, na mimi daresay wabaya karibu daima kuwa na mguu juu. Linapokuja kuchukua faida ya vifaa na programu ya kompyuta wetu binafsi, tuna kutambua kwamba kijana mbaya tu mahitaji ya kupata moja rahisi kukosea - moja kunyonya, moja mdudu - katika kipande cha programu tumekuwa iliyoandikwa au ni mbio ili kwa ajili yake au kwake kuchukua mfumo wetu mzima. Kwa kulinganisha, sisi - wazuri - haja ya kiraka na kurekebisha yote ya mende wale na kuepuka wa udhaifu wote wale. Na hivyo, mimi daresay juu ya wote, wabaya na faida. Nini madarasa kama hii na madarasa ya baadae ni kweli kuhusu si kuhusu kufundisha jinsi ya kupigana vita kwamba hawa watu wabaya kufanya, lakini ni kuhusu jinsi ya kujikinga au angalau jinsi ya kufanya uamuzi mahesabu kuwa ndiyo, najua hii kipande cha programu inaweza kweli kusoma kila moja ya barua pepe yangu, lakini nina sawa na kwamba kwa sababu ya thamani yake huleta mimi kwa upande mwingine. Mimi nina radhi sana kwa kuwa alijiunga na 2 ya watu smartest Mimi najua - Rob Bowden na Nate Hardison. Rob ni kuhusu kuchukua nasi kwa njia ya ziara katika ngazi ya chini tags usalama - kwamba ya compiler ambayo, hadi sasa, tumekuwa wote kuja upendo na uaminifu. Rob Bowden. [Applause] [Rob] wote wa kulia. Daudi pretty much kuchukuliwa sapa wangu wote kwamba alikuwa anaenda kuanzisha na, lakini - Wiki kadhaa zilizopita, ninyi kuona mfano wa shambulio buffer-kufurika ambayo ni mfano wa Hacking hacker katika baadhi kipande cha programu kwamba wao ni si walidhani kuwa Hacking ndani. upande mwingine wa hii ni wakati mwingine una programu ambayo ni malicious katika yenyewe. Haina hata haja ya kuwa hacked. mtu ambaye aliandika programu anataka hack wewe. Hebu tu tuzame kwenye kanuni, kuchukua kuangalia "login.c". Hapa, mpango silly kwamba linatambulisha username na password mchanganyiko. Hapa lazima dhahiri kuwa kupata starehe na C tena kwa chemsha bongo. Kwanza, sisi ni kutumia kupata masharti kuelezea jina la mtumiaji, basi sisi ni kutumia kamba kupata kunyakua password, na kisha tuna hundi trivial baadhi ya haki, ni jina la mtumiaji "rob"? Na ni password "thisiscs50"? Au, ni jina la mtumiaji "Tommy" na password "i <3javascript"? Kama aidha ya wale ni kesi,  basi sisi ni kwenda tu magazeti "Mafanikio", na kisha sisi kupata. Vinginevyo, sisi ni kwenda magazeti "batili login" na kisha, bila shaka,  tangu kumbukumbu mchoro masharti malloc, sisi bure username na password. Hii ni trivial login mpango, na kama wewe kufikiri kuhusu wakati wewe kuingia katika appliance, ni pretty sawa - au hata kuingia katika kompyuta yako - kuna baadhi tu ya mpango login ambayo ni kutoa huduma. Hapa, sisi kutokea kwa kuwa vigumu-coded 'rob', 'thisiscs50', 'Tommy', 'i <3javascript', lakini pengine kuna baadhi faili mahali fulani kwenye mfumo wa uendeshaji wako ambayo ina orodha ya majina ya watumiaji ambao unaweza kuingia kwa mfumo na orodha ya nywila kuhusishwa na majina ya watumiaji hao. Kawaida nywila si tu kuhifadhiwa katika maandishi wazi kama hii. Kuna aina fulani ya kuficha, lakini hii kufanya kwa mfano wetu. Kuja juu kwa compiler yetu - itakavyo kuwa rahisi sana. Tunahitaji taja angalau baadhi faili kwamba tunataka kukusanya, na kisha hapa - mistari haya ni kusoma tu faili. Ni anayesoma faili nzima katika buffer moja kubwa, na kisha sisi null-kusitisha buffer yetu kama siku zote, na hatimaye sisi tu kukusanya faili. Sisi siyo kwenda kuangalia jinsi kukusanya ni kweli kutekelezwa, lakini kama ladha, ni tu wito Clang. Sisi ni kwenda kutumia programu hii ya kukusanya vitu badala ya Clang. Tatizo moja ni sisi kuanza na sisi tunataka kuona kukusanya compiler yetu, lakini kama sisi siyo kwenda kutumia Clang, sijui nini nitakacho kukusanya pamoja. Hili ni suala ujumla inayojulikana kama uchangishaji. Hivyo, kama hii mara moja, mimi naenda kutumia Clang kukusanya compiler yetu. Kama unafikiri ya GCC na Clang - programu hizo, compilers wale ni daima kuwa updated, na compilers wale ni compiled kutumia GCC na Clang. Clang ni moja tu kubwa C au C + + mpango, hivyo compiler wao kutumia kukusanya kwamba ni Clang. Hapa, sasa, sisi ni kwenda tu kutumia compiler yetu kukusanya compiler yetu, na tunaweza hata kusema - '/ compiler.', 'compiler.c', 'compile.c', 'o-compiler'. Taarifa hii ni amri halisi mimi mbio kabla ya - tu nafasi Clang na '. / compiler'. Na sasa tuna mwingine compiler, lakini ni sawa. Ni tu wito Clang. Sisi ni kwenda kutumia compiler yetu kukusanya login mpango wetu. Sawa - ". / Compiler login.c-o login". Hivyo, undefined akimaanisha "GetString". Got "-lcs50". Sawa. Hivyo sasa nina login mpango wetu. Mbio ni - kupokea "Tafadhali ingiza jina lako." Mfano mmoja alikuwa kuwaibia. Tafadhali ingiza nywila yako - thisiscs50. Na mafanikio! Mimi kupata. Mbio tena na kuingia baadhi password batili - au batili username na password - batili login. Sawa. Hakuna kitu ya kuvutia kuhusu hili hadi sasa. Lakini, hebu tuangalie login tena - na hii ni ya kwenda kuwa mfano fulani yasiyo na maana, lakini hebu kuongeza mwingine katika hapa na kusema, mwingine kama ((strcmp (jina la mtumiaji, "hacker") == 0 && strcmp (password, "LOLihackyou") == 0)) hivyo sasa, printf ("Hacked Wewe sasa wanapata n \!."); sawa. Kuandaa hii - compiler login.c-o-login lcs50 - sasa mbio login - na kama mimi kutumia jina la mtumiaji yangu hacker na password LOLihackedyou - Je ninapoandika ni makosa katika huko mbele? Katika login.c-ihack - I'll kufanya hacked sababu nadhani mimi kufanya hivyo baadaye. Sawa. Recompiling. Re-mbio - hacker - LOLihackedyou - Hacked! Wewe sasa kufikia. Kuna haionekani kuwa kwamba mengi ya tofauti kwa sababu ni sawa exact hundi nilikuwa nafanya kwa majina ya watumiaji wengine na nywila. Plus, jambo kubwa ni kwamba kama watu wengine kuangalia hii login.c-- kusema, kama mimi kupita hii mbali na mpenzi wangu, na wao kufungua faili hii, na wao kusoma hii, wataona - sawa, kwa nini kuwa na mistari haya ya code hapa? Hiyo ni wazi si kitu ambacho lazima kuwa katika programu yako. Katika baadhi ya programu - kama yoyote programu ya umiliki ambayo si wazi chanzo - unaweza kamwe kuona mistari haya ya kificho. Kitu kama Skype au kitu - kwa ajili ya wote, unajua, Skype ni kwenye kompyuta yako na kuna ni baadhi tu maalum username-password mchanganyiko ambayo kujumuika kwa Skype katika baadhi ya njia maalum. Hatujui kuhusu hilo, na watu hawajui kuhusu hilo, kwa sababu wao si kupata kusoma sourcecode kuona kwamba kuna shimo hili. Nini sisi wito huu - ingawa hii si mfano wajanja sana - hii inaitwa mlango wa nyuma. Kama unafikiri ya mlango wa nyuma wa nyumba yako. Hapa, kama mimi validate kwa 'nyang'anya' majina ya watumiaji au 'Tommy,' kwamba itakuwa kama kutumia "mlango wa mbele." Hiyo ndiyo njia natakiwa salama kuingia. Lakini kama mimi kuingia na hili la matumizi na nenosiri - basi hiyo ni kutumia "nyuma ya mlango." Haikuwa njia kukusudia kupata katika mpango, lakini bado kazi. Na watu kwa jumla hawatakiwi kujua kuhusu hizi milango ya nyuma. Sisi ni kwenda kuboresha. Hebu revert hii login.c yetu ya awali, na hebu tuangalie compiler wetu mpya. Sawa. Kila kitu hapa ni sawa. Sisi ni kusoma faili nzima katika buffer. Kila kitu hapa chini ni sawa. Sisi tu compiled faili. Lakini sasa mimi kuwa hii kubwa ikiwa katika hapa kwamba anasema, kama faili kwamba mimi kutokea kwa kuwa anaandaa ni login.c, basi mimi kufanya kitu maalum. Nini ni kwamba kitu pekee? Mimi naona hapa baadhi string iitwayo 'hack', na kuangalia mistari haya ya code - hizi ni sawa mstari wa kanuni - mimi nadhani alifanya matumizi 'ihack' na siyo 'ihacked' kabla ya - kuangalia mistari haya ya kificho, wao uko sawa mistari halisi ya kificho kwamba nilikuwa katika login.c kabla. Lakini sasa, badala ya kuwa nao katika login.c, Mimi naenda kuziweka katika compiler yangu. Hizi ni mstari wa kanuni nitakacho unataka Insert katika login.c. Hizi mistari ya code - buffer kwamba awali uliofanyika login.c yangu tena kwenda kuwa kubwa ya kutosha kwa sababu sasa nataka pia kuingiza hii hack ndani ya katikati ya mpango wangu. Yote hii ni kufanya ni kujenga buffer mpya kwamba kubwa kutosha - wote kwa ajili ya faili awali na mistari ya ziada ya code - hack - kwamba mimi unataka Insert huko. Hapa ni kitu cha ilani - Char * muundo = "/ / inawanyima kupata!" Kama sisi kuangalia nyuma katika login.c, tunaona chini hapa hii comment - inawanyima kupata! Katika login.c, maoni hii inaonekana kabisa innocuous, hivyo ungependa si mtuhumiwa yoyote dhamira malicious na tu comment hii. Lakini katika compiler yetu, sisi ni hasa kwenda kuangalia kwa line hii ya maadili, na kisha wakati tunaona ni - mistari haya ya maadili ni kuingiza hack yetu katika nafasi hiyo. Hivyo, sisi ni juu ya iterating login.c nzima, sisi ni kuingiza kwamba hack hasa ambapo anasema inawanyima kupata, na kisha sisi ni kuandaa - si login.c awali lakini login.c mpya na kwamba hack kuingizwa haki katika 'inawanyima kufikia.' Sasa nataka kukusanya compiler yangu mpya na kwamba hack kushiriki. Sitakuja kutumia Clang, hivyo hebu nakala compiler sisi kutumika kabla ya na kutumia - hivyo, compiler compiler.c compile.c-o evil_compiler. Sasa wetu mabaya compiler - kama sisi kutumia compiler zetu mbaya kukusanya faili yoyote mengine, faili kukusanya kama ni lazima. Ni kawaida kabisa. Lakini kama sisi kutumia compiler zetu mbaya kukusanya login - hivyo, / evil_compiler login.c-o-login lcs50. - kuangalia login.c tena, kuna kitu kabisa katika hapa. Ni yetu ya kawaida 'kama ni aidha kuwaibia au Tommy tuko katika, mwingine tuko nje'. Lakini wakati sisi kukimbia executable yetu, hii kazi kama kawaida. Mbio tena - hacker, LOLihackyou - Hacked! Wewe sasa kufikia. Kuangalia tu login.c, wewe bila kufikiri kitu chochote kibaya. Lakini compiler kwamba ni kuwa kutumika kukusanya login.c ni hasa iliyoundwa na kuingiza hii hack katika mpango. Tumekuwa tu wakiongozwa tatizo yetu ya awali. Awali, tulikuwa na mistari haya ya kificho katika login.c kwamba kama mtu mwingine yeyote akawatazama, wao d kuwa kama hilo, kwa nini hawa hapa? Sasa kama kuna mtu kinachotokea kwa kuangalia compiler yetu, wao itabidi kuangalia mistari haya ya kificho na kusema, nini ni hizi hapa? Hivyo, sisi si kabisa kutatuliwa tatizo letu. Lakini tunaweza kutumia wazo hili tena. Kuchukua kuangalia toleo yetu ya tatu ya mkusanyaji, ni wazo sawa. Sisi kusoma faili nzima katika buffer hapa juu, sisi kukusanya faili chini hapa, na mimi kuwa na aina fulani ya hack string katika hapa, lakini taarifa faili kwamba mimi nina kweli Hacking sasa. Mimi ni Hacking compiler.c si login.c. Lakini je, Mimi kuingiza ndani ya compiler.c? Mimi nina kuingiza kanuni hii ambayo ni code exact katika compiler wetu uliopita, ambayo ilikuwa na maana Insert code katika login.c. Hapa ni yetu kama strcmp faili login.c na kisha Insert katika mambo yetu login.c hack. Compiler hii mpya ni nia ya kujenga compiler ambayo ni lengo kwa kukusanya login maliciously. Tutaweza kuona nini ambacho kinatusaidia. Kila kitu kingine ni sawa, hivyo ni kazi hasa kama ni kazi na compiler yetu uliopita. Sisi ni tu juu ya iterating compile.c yetu yote. Lakini sasa badala ya kuangalia kwa 'inawanyima kupata,' sisi ni kuangalia kwa 'kukusanya faili.' Ambapo ni kukusanya faili? Kuangalia compiler.c yetu kabisa wasio na hatia, ni haki ya chini hapa chini. Hii comment - kukusanya faili - tena, kwamba inaonekana kabisa innocuous. Lakini, katika toleo yetu malicious wa compiler, tunaenda - haki kabla ya maoni kwamba - Insert hii code ambayo ni lengo kwa Insert code wakati anaandaa login.c. Kuna mengi ya ngazi ya indirection hapa. Hebu kweli kukimbia. Tena, tutaweza nakala compiler yetu ya awali. Sasa, kukusanya - compiler compiler.c compile.c-o evilest_compiler - na sasa evilest_compiler. Evilest compiler - kama sisi kutumia kwamba kukusanya compiler yetu, hebu kweli kuangalia. Evilest_compiler - kuleta juu, njia yote nyuma ya toleo 1 compiler yetu - toleo ya 1 ya compiler yetu ambayo mara tu kusoma katika faili na kukusanya yake. Hapa, tunajua kwamba evilest_compiler - wakati inaandaa hii faili - ni kwenda Insert code haki hapa kabla kukusanya faili, na kificho kwamba ni kwenda kuangalia hasa kama code kutoka toleo la pili la compiler wetu ambayo alifanya hivyo. Hii code, ambayo ni nia ya kuvunja ndani login, ni kwenda kuingizwa katika compiler wetu kwa compiler evilest. Hebu kutumia evilest_compiler kukusanya compiler yetu. Sasa tutaweza kutumia compiler, kuja nyuma zaidi ya kuingia, na kumbuka login.c hii ina kitu kabisa tuhuma ndani yake. Lakini kwa kutumia compiler yetu kukusanya login.c, rob, thisiscs50, mafanikio. Login Hebu hacker, LOLihackyou, Hacked! Wewe sasa kufikia. Kutambua kwamba hii ilikuwa tofauti na toleo la 2 compiler yetu. compiler sisi kutumia - wacha hoja nyuma - nakala kutoka login - hebu kuleta compiler yetu nyuma katika hapa. Kuondoa evilest compiler. Wote sisi wameondoka sasa ni compiler. Tukiangalia compiler.c, kuna kitu kabisa katika pale kwamba inaonekana malicious kwa njia yoyote. Tukiangalia login.c, kuna kitu kabisa katika hapa kwamba inaonekana malicious kwa njia yoyote. Lakini, wakati sisi kutumia compiler yetu kukusanya login.c, sisi kupata toleo hackable ya login.c. Wakati sisi kutumika compiler yetu kukusanya toleo jipya la mkusanyaji, sisi kupata toleo hackable wa compiler. Sasa kama sisi kwenda nje na kusambaza compiler wetu executable, na hakuna mtu kujua kwamba kuna kitu chochote malicious kuhusu hilo. Hii ni kweli hivyo katika - Sikumbuki mwaka - Ken Thompson, na yeye alishinda tuzo ya Turing - kama wewe ni unfamiliar na tuzo ya Turing, ni karibu daima hufafanuliwa kama Tuzo ya Nobel ya sayansi ya kompyuta, hivyo kwamba ni jinsi gani mimi itabidi kufafanua. Ken Thompson alitoa hotuba yake wakati yeye alipata Turing tuzo inayoitwa "Reflections juu ya Trust kuamini." Kimsingi, hii ilikuwa wazo la hotuba yake. Isipokuwa badala ya compiler yetu, yeye alikuwa anazungumza juu ya GCC - nyingine tu kama mkusanyaji Clang - na nini alikuwa akisema ni, kama login.c yetu, login.c yetu inaonekana kiasi haina maana lakini alikuwa anazungumza kuhusu halisi UNIX login.c. Wakati wewe kuingia kwa appliance yako, kuna baadhi ya mpango login kwamba ni mbio. Hiyo ilikuwa login kuwa alikuwa anazungumza kuhusu. Hii ilikuwa kimsingi wazo lake. Alisema kuwa katika GCC, yeye katika nadharia inaweza kuwa na kupanda mdudu - si mdudu lakini malicious code - kwamba wakati wa kuandaa kazi login - faili login - ingekuwa Insert mlango wa nyuma ili aweze kwenda na mfumo kabisa yoyote UNIX katika ulimwengu na kuingia kwa jina la mtumiaji baadhi maalum na password. Wakati huo, GCC alikuwa pretty much compiler kwamba kila mtu kutumika kwa ajili ya kitu chochote. Kama mtu yeyote kilichotokea kwa update GCC, basi wangekuwa recompile GCC kutumia GCC, na wewe bado kupata toleo mbaya ya GCC sababu ilikuwa hasa compiled kutambua kwamba ilikuwa recompiling compiler. Na kama wewe milele kutumia GCC kwa recompile faili login.c, basi ingekuwa Insert hii mlango wa nyuma kwamba angeweza kutumia kuingia kwenye kompyuta yoyote. Hii yote ilikuwa ya kinadharia, lakini - kwamba hali fulani ilikuwa ya kinadharia, lakini mawazo ni kweli sana. Mwaka 2003, kulikuwa na mfano sawa ambapo - tutaweza kuangalia faili hili, na ina kitu kabisa kwa kweli kufanya na hayo, lakini mdudu ni sawa. Faili hii tu amefafanua kazi kuitwa mgawanyiko. Inachukua hoja, b hoja, na lengo ni kufanya kugawanywa na b. Lakini haina baadhi ya kuangalia makosa, hivyo sisi kujua mambo ni weird ikiwa b kinachotokea kwa sawa sifuri. Kama b ni sifuri, basi sisi kupasuliwa hii katika kesi 2. Unaweza tayari kuona mdudu. kesi ya kwanza - ikiwa ni sifuri, basi sisi ni kufanya sifuri kugawanywa na sifuri, na sisi tu kusema kwamba Undefined. kesi ya pili - kama si sifuri, kisha ni kitu kama 1 kugawanywa na sifuri, na sisi tu wito kwamba infinity. Mwingine sisi kurudi kawaida kugawanywa na b. Na hivyo hapa, sisi ni mbio kesi hizo 3, na sisi kweli kukimbia mgawanyiko - ni yells saa yake kwa ajili yangu - hivyo, kupuuza maonyo ya Clang - mwisho wa kazi zisizo utupu - inaonekana sikuweza kukusanya hii kabla. Kurudi 0. Kufanya kugawanya - wote haki. Kwa. Mgawanyiko /, tunaona 3, Infinity, Infinity. Sifuri kugawanywa na sifuri haipaswi wamerejea infinity. Na kama wewe si figured nje mdudu bado - au wasiyaone kabla - tunaona kwamba sisi ni kufanya = 0. Pengine sisi maana == 0. Pengine. Lakini, hii ilikuwa kweli kitu tena kuwa, katika 2003, kernel Linux - hivyo appliance wetu anatumia kernel Linux - yoyote Linux mfumo wa uendeshaji anatumia kernel Linux - hivyo mdudu sana sawa na hii ilionyesha juu. Dhana ya mdudu huyu alikuwa - tena, kulikuwa na baadhi tu kazi kwamba aliitwa, na alifanya kidogo ya kuangalia makosa. Kulikuwa na baadhi ya pembejeo maalum kwamba kosa hili kuangalia - ni lazima wamekuwa kama, wote haki, huwezi piga kazi hii na kigawanyo ya 0. Hivyo, mimi naenda tu kurudi baadhi makosa. Isipokuwa, haikuwa kama wasio na hatia kama tu kuweka sawa na 0. Badala yake, hii mstari wa kanuni kuishia kufanya kitu zaidi kama mtumiaji = msimamizi. Au mtumiaji = superuser. Ilikuwa hatia - katika mtazamo wa kwanza - kosa ambapo inaweza kuwa tu imekuwa ya kuridhisha kwamba mimi tu alitaka kuripoti kitu fulani kama mtumiaji kilichotokea kuwa msimamizi superuser. Lakini kisha re-kufikiri kuhusu hilo, mtu alitaka kuangalia kama rahisi typo, lakini ikiwa kanuni hii alikuwa kweli imekuwa iliyotolewa, basi ingekuwa na uwezo wa Hack ndani ya mfumo wowote kwa kupita bendera maalum - katika kesi hii b = 0 - na ingekuwa moja kwa moja kufanya mtumiaji msimamizi, na kisha yeye ana mamlaka kamili. Hii ilitokea katika 2003. Ni hivyo tu kilichotokea kwamba sababu tu ilikamatwa ilikuwa kwa sababu kuna ilitokea kuwa baadhi mfumo automatiska kwamba niliona mabadiliko katika faili hii ambayo kamwe lazima yamebadilishwa kwa binadamu. faili lazima tu wamekuwa kiotomatiki. Ni hivyo tu kilichotokea kwamba mtu kuguswa - vizuri, mtu huyo alitaka hack kuguswa kwamba faili, na kompyuta hawakupata kwamba kugusa. Hivyo, walibadilisha hii na baadaye tu alitambua nini maafa ingekuwa kama hii walikuwa wametelemka kutoka katika ulimwengu wa kweli. Unaweza kufikiri kwamba - kuja nyuma compiler mfano wetu - hata kama hatuwezi kuona - kuangalia sourcecode - kwamba kitu chochote hasa ni makosa, kama sisi kweli kuangalia code binary wa compiler, tunataka kuona kwamba kitu fulani ni sahihi. Kwa mfano, ikiwa sisi kukimbia masharti kazi - ambayo ni haki ya kwenda kuangalia juu ya faili na magazeti nje ya masharti yote inaweza kupata - kama sisi kukimbia masharti juu ya compiler yetu, tunaona kuwa mmoja string kwamba anaona ni hiyo ya ajabu - mwingine kama (strcmp (jina la mtumiaji, "hacker") - blah, blah, blah. Kama mtu kilichotokea kuwa Paranoid kutosha si matumaini compiler zao, hawakuweza kukimbia masharti na kuona haya, na kisha wao kujua kwamba kuna kitu kibaya na binary halisi. Lakini, masharti ilikuwa inevitably kitu ambacho alikuwa compiled. Hivyo, ambaye ni kusema kwamba compiler yetu si tu kuwa na zaidi maalum code kwamba anasema, iwapo masharti ni milele kukimbia kwenye compiler yetu, si pato wote wa kificho kwamba malicious. wazo moja na kama tunataka dis-kukusanyika faili - tulijifunza kwamba assembler inatuleta kutoka code mkutano kwa code mashine - tunaweza kwenda katika mwelekeo kinyume - objdump-d compiler - atatupa mkutano wa code yetu. Kuangalia hii, ni pretty cryptic, lakini kama sisi alitaka, tunaweza kuangalia kwa njia hii na sababu, ngoja, kuna kitu kinachoendelea katika hapa kwamba lazima kuwa kinachoendelea, na kisha tutaweza kutambua kwamba compiler ni kufanya kitu malicious. Lakini, kama masharti, ambaye ni kusema objdump hakuwa maalum-cased. Kimsingi, inakuja chini huwezi kumwamini chochote. hatua ya karatasi kuitwa "Kutumaini Trust" ni kwa ujumla, sisi imani compiler yetu. Wewe kukusanya code yako na kutarajia kufanya nini kuuliza kufanya. Lakini, kwa nini wewe uaminifu compiler? Wewe hatukuandika compiler. Huwezi kujua nini compiler ni lazima kweli kufanya. Nani kusema unaweza uaminifu ni? Lakini hata hivyo, vizuri, labda tunaweza kuamini compiler. Kuna mamia ya maelfu ya watu ambao wameangalia hii. Mtu lazima kutambuliwa kitu ilikuwa juu na compiler. Nini kama sisi tu kwenda 1 undani? Inaweza hata kuwa processor yako. Kama ujinga kama inaweza kuwa na uwezekano, labda kuna baadhi ya mfanyakazi rogue katika Intel ambaye inajenga wasindikaji hizi kwamba wakati wowote processor kwamba matangazo ya kuwa wewe ni mbio baadhi amri hiyo ni maana ya kuingia kwa kompyuta, processor kukubali baadhi username maalum na mchanganyiko password. Itakuwa wildly ngumu, lakini mtu anaweza kufanya hivyo. Katika hatua hiyo, ni wewe kweli kwenda kufungua kompyuta yako kuangalia processor na kutumia darubini kutambua kuwa nyaya hizi si lined up kama wanapaswa kuwa? Hakuna mtu ni milele kwenda kupata kwamba kosa. Katika hatua nyingine, wewe tu na kutoa juu ya uaminifu na kitu. Watu wengi kuamini compiler katika hatua hii. Hiyo ni kusema kwamba si lazima lazima. Kuangalia video fulani infamous - [Muziki makubwa kucheza] [Ni mfumo UNIX. Najua hii.] [Ni files wote -] Alisema, "Ni mfumo UNIX Mimi najua hili.". Nafasi UNIX na chochote mfumo wa uendeshaji wako favorite ni - aliweza kuwa alisema, "Ni mfumo wa Windows Mimi najua hili.". Ni kauli kabisa na maana, lakini kwa wote tunajua, yeye kinachotokea kwa kujua mlango wa nyuma katika mfumo UNIX. Yeye anajua baadhi ya macho username / password kwamba kwa kweli basi yake kufanya lolote yeye anataka. Wote haki. maadili ya leo ni ya kimsingi huwezi kumwamini chochote. Hata mambo ya kuandika - wewe hatukuandika compiler. compiler inaweza kuwa mbaya. Hata kama wewe alifanya kuandika compiler, kitu ambacho mbio compiler inaweza kuwa mbaya. (Laughing) Kuna si mengi unaweza kufanya. dunia ni wamepotea. Nyuma kwa Daudi! [Applause] [David] Shukrani. Kwamba alikuwa kweli tamaa. Lakini kwa kweli, Rob ni sahihi. Sisi si kweli kuwa suluhisho na kwamba, lakini wewe ni kuhusu kupata ufumbuzi wa baadhi kwa baadhi ya ulinzi zaidi ya kawaida. Katika kutarajia ya hii, kile Nate na mimi wamekuwa wakifanya offstage kuna ni kujua kwamba kuna Laptops hivyo wengi katika nafasi hii, tumekuwa sniffing yote ya trafiki wireless kwenda kupitia chumba hili kwa dakika 20 iliyopita wakati wa majadiliano Rob, hivyo sisi ni kwenda kuchukua mapumziko 2 dakika hapa. Nate kinaendelea kuanzisha, na kisha sisi ni kwenda kuzungumza kuhusu aina ya mambo sisi kuwa kupatikana. (Kicheko) Kwa hiyo, mimi inaweza kuwa chumvi kidogo tu kwa ajili ya mchezo wa kuigiza, lakini sisi wangeweza sniffing wote wa trafiki yako wireless kwa sababu kwa kweli, ni rahisi. Lakini pia kuna njia ambazo unaweza kulinda dhidi ya hii, na hivyo na kwamba, Mimi kukupa Nate Hardison. >> [Nate] Sweet. (Applause) [Nate] Shukrani, mtu. Nashukuru kelele nje. Yote ya haki! Ni mchezo wiki. Je, wewe guys msisimko? Hopefully itakavyo kuwa mchezo kubwa juu ya Jumamosi. Mimi kufikiria wewe guys katika hatua hii - kutokana na kwamba una chemsha bongo juu ya Jumatano wote kuhusu kanuni, na tulikaa tu kupitia hotuba ya ajabu na Rob na rundo zima la C code ndani yake - ni labda kidogo uchovu wa kificho. Katika sehemu hii, sisi ni kweli hatakukugusa yoyote code wowote. Sisi ni tu kwenda kuzungumza kuhusu teknolojia ya kwamba matumizi ya kila siku, mara nyingi kwa wengi, masaa mengi kwa siku, na tutaweza kuzungumza kuhusu maana na usalama kwamba kuna. Tumekuwa aliongea mengi kuhusu usalama juu ya mwendo wa muhula, na sisi ilianza kwa kidogo ya crypto. [Bdoh lv vwlqng!] Na wakati wewe guys pengine ni super-msisimko kuwa kupita maelezo kwa kila mmoja katika darasa kutumia cipher Kaisari kama hii moja, katika hali halisi, kuna baadhi ya zaidi ya kujifurahisha na kuwa alikuwa na wakati wewe ni kweli kuzungumza juu ya usalama na kwamba aina ya mambo ya ajabu. Leo, sisi ni kwenda kufidia teknolojia chache kwamba watu kweli matumizi katika ulimwengu wa kweli kufanya kila aina ya mambo kutoka sniffing pakiti ya watu kwa kweli kwenda katika na kuvunja katika akaunti ya benki na watu wote ya kwamba. Hizi ni halali zana kwamba tunazungumzia na ubaguzi wa uwezekano wa chombo moja. Na mimi nataka tu kufanya disclaimer haraka. Tunapozungumzia kuhusu mambo haya, tunazungumzia kuhusu wao ili kujua nini huko nje, na wewe ni ufahamu wa jinsi ya kuwa salama wakati wewe ni nje kwa kutumia kompyuta yako. Lakini sisi dhahiri hawataki kuashiria kwamba unapaswa kutumia zana hizo katika Dorm yako au nyumba yako kwa sababu unaweza kukimbia katika kura ya masuala makubwa. Hiyo ni sababu moja leo kwamba sisi kweli walikuwa si sniffing pakiti yako. Wote haki. Mwisho Jumatatu, sisi aliyesema kuhusu cookies, na HTTP, na uthibitishaji, na jinsi Firesheep kuufungua mlango huu kubwa katika akaunti yako Facebook, kwa Hotmail akaunti yako - kama mtu yeyote bado kutumia Hotmail - na wengine wengi akaunti. mengi ya mambo haya ni kwenda kujenga mbali ya kwamba, lakini kwanza, nataka kuchukua ziara ya haraka ya jinsi Internet ina tolewa juu ya muda. Nyuma katika '90s, you guys wanaweza nimekumbuka kweli plugging katika kompyuta yako na moja ya haya. Sasa hatuwezi kufanya kwamba kiasi tena. Ni kweli zinageuka kuwa ili kuziba cable Ethernet ndani ya mbali yangu, Mimi sasa kutumia moja ya adapters haya ambayo ni aina ya mambo. Badala yake, mwaka 1997 tulikuwa na hii mpya, fun teknolojia alikuja kuwa inajulikana kama IEEE 802.11, hivyo hii ni wireless internet kiwango IEEE ni hii ya uongozi kwamba anatoa nje ya kila aina ya - inachapisha kila aina ya viwango na uhusiano na kompyuta. Viwango vya 802 ni wote kuhusu teknolojia ya Internet. Hivyo 802.3, kwa mfano, ni kiwango Ethernet, 802.15.1 naamini ni kiwango Bluetooth, na 802.11 ni wote kuhusu mtandao wireless. Katika 1997 hii alikuja nje. Haikuwa kabisa kukamata haki mbali. Ilikuwa hadi 1999 na kiwango 802.11b alikuja kuwa tu got kweli maarufu. Jinsi wengi unakumbuka wakati kompyuta ilianza kuja nje na kupata wi-fi juu yao? Hiyo ilikuwa ni aina ya baridi, huh? Nakumbuka kupata laptop yangu ya kwanza katika shule ya sekondari, na alikuwa na kadi ya wireless katika hilo. Baba yangu akampa mimi na alikuwa akisema kwamba mimi wanapaswa kutumia kwa ajili ya programu zangu chuo na yote ya kwamba, na mimi nilikuwa na wazo jinsi mimi alikuwa anaenda kuangalia up online hii mambo ya ajabu. Lakini bahati nzuri, nilikuwa kadi wireless, ili kwamba ilikuwa pretty cool. Siku hizi, itabidi pia kuona 802.11g ambayo ni moja ya mengine kweli maarufu wireless viwango kwamba huko nje. B wote na g ni pretty imepitwa na wakati katika hatua hii. Mtu yeyote kujua nini toleo watu wengi juu ya haki sasa ikiwa wao ni kununua ruta mpya wireless na kwamba aina ya stuff? N. Hasa. Bingo. Na zinageuka kuwa kiwango ac ni kuja tu nje katika rasimu, na kuna matoleo mengine njiani. Kwa kila vigezo hivi nini tuko kupata ni zaidi Bandwidth, zaidi data kwa kasi. Haya mambo kuendelea kubadilisha pretty haraka. Ni pia hufanya hivyo kwamba tuna kununua ruta zaidi na mambo ambayo yote fun. Hebu majadiliano juu ya kile mawasiliano ya wireless kwa kweli ni katika msingi wake. Pamoja na Ethernet na wale zamani modems piga-up, wewe kweli alikuwa na haya mambo ambayo imeingia kwenye kompyuta yako, na kisha wewe plugged katika Modem ya aina, na kisha wewe plugged ndani jack katika ukuta yako. You alikuwa uhusiano huu wired, haki? hatua wote wa wireless ni kupata kuondoa mambo haya. Ili kufanya hivyo, kile sisi ni kimsingi mawasiliano ya redio ambapo router wetu wireless - aliyeteuliwa na icon zetu kidogo wireless - imeunganishwa na mtandao na mshale mango hii kuonyesha aina fulani ya uhusiano wired, lakini wakati unapounganisha router yako wireless wewe ni kweli kutumia karibu kama talkie walkie-kati ya kompyuta yako na router yako wireless. Nini kweli cool kuhusu hili ni unaweza kuzunguka. Unaweza kubeba kompyuta yako yote juu ya Sanders, kwenda surf mtandao, chochote unataka, tu kama wewe wote kujua na upendo, na wewe si milele kuwa plugged katika kitu chochote. Kwa hii kazi, sisi wote hii mapokezi na maambukizi. Ni kweli ni kama talkie walkie-kwamba. Hii wireless router - ambayo katika Sanders ni kukaa chini hatua hii, haki hapa - daima ni ya utangazaji na kupokea, utangazaji na kupokea, na vivyo hivyo, kompyuta yako yote ni kufanya kwamba aina moja ya kitu, pia. Sisi tu hawezi kusikia. Kitu nyingine ambayo unaweza kufanya ni wewe unaweza kuwa na kompyuta nyingi kuzungumza na router huo wireless. karibu wewe ni router - na tena, hii ni mawasiliano ya redio - karibu wewe ni, bora signal yako, bora ya kompyuta yako anasikia 'router na wanaweza kuwasiliana na mtandao. Kama wewe ni milele katika guys Dorm yako, katika nyumba yako na wewe wanashangaa kwa nini ishara yako ni mbaya, pengine ni kwa sababu). wewe si karibu sana na router yako, au b). kuna kitu katika kati ya wewe na router yako kama ukuta saruji au kitu kwamba hana basi mawimbi ya redio wale kupitia. Hebu kuzungumza kidogo kuhusu nini guys mbaya kama wi-fi. Guys mbaya upendo wi-fi kwa sababu kadhaa. Hapa ni mbaya wetu guy nasty haki pale. Moja ya sababu kwa nini hii guy mbaya anapenda wi-fi ni kwa sababu, kwa default, mengi ya ruta wireless kuja na wakati kuweka yao juu, wao uko kimaandishi. Hili limekuwa tatizo, na kumekuwa na matukio - nyingi matukio, sasa - ambapo kijana mbaya inaonyesha hadi nyumba mtu wa, matangazo kwamba kuna kimaandishi wi-fi ambayo wanaweza kuungana. Wao kuungana na wi-fi, na kisha wao kuanza kushusha kila aina ya mambo ya kujifurahisha. Na wao siyo kushusha kittens, wao siyo kushusha puppies. Hii ni kama BitTorrent. Hii ni nasty ya nastiest. Kumekuwa na matukio ambapo FBI ina hata Gotten kushiriki kufikiri kwamba mtu ambaye anamiliki nyumba ni kweli moja kwenda huko nje na kushusha stuff kwamba kweli haipaswi. Baada ya kimaandishi wi-fi ni dhahiri si kitu unataka kufanya, ikiwa tu hawana FBI kuja kupiga hodi mlango yako. Sababu nyingine ya wabaya upendo wi-fi ni sababu ya kwamba Daudi aliyesema kuhusu mapema wakati wa mapumziko. Sababu ni mawasiliano ya redio katika msingi wake, kama unajua channel, unaweza kusikiliza stesheni ya redio. Kwa mfano, kama kuna haki ya mbaya huko ameketi katika kulia katikati ijayo kwa uhakika upatikanaji, haki ya karibu na kwamba wireless router, guy mbaya unaweza kusikiliza katika juu ya yote ya trafiki wireless kwamba kuja kutoka wote wa kompyuta hizo. Kwa kweli, haya guys - hawa wachache wenye bahati ambao ni hapa katika mstari wa mbele - kwa sababu wao ni super-karibu na wote wa ruta haya wireless kwamba kukaa tu chini ya hatua, wangekuwa na uwezo wa kusikia trafiki kila mtu katika chumba hii nzima kama wewe ni kushikamana na wi-fi na kuanza kuvinjari kupitia pointi hizo upatikanaji. Ni si ngumu sana kukaa mwenyewe katika nafasi nzuri ya vuta na takwimu kutoka nini watu wengine ni kufanya. Ni kitu kuweka katika akili, hasa kama huna uhakika ambapo uhakika upatikanaji ni, na wewe ni browsing kusema, saa Starbucks. Ni zinageuka kuwa sniffing na yote ya kwamba si kweli kwamba wote ngumu ya kufanya. Kuna programu inayoitwa tcpdump ambayo dumps kila aina ya trafiki TCP na unaweza kuendesha pretty tu - tu kama mimi leo asubuhi. Hapa ni kidogo kidogo ya dampo, na hapa ni baadhi ya trafiki kwamba alikuwa anakuja juu ya mtandao wangu kwa wakati. Unaweza kuona - kama wewe squint kweli ngumu - kuna kidogo ya Spotify huko. Juu ya tcpdump - kwa sababu hii ni aina ya maumivu kwa kutumia - kuna programu inayoitwa Wireshark ambayo bahasha hii yote juu katika GUI nice. Wireshark ni super-Handy hivyo kama wewe kwenda kuchukua madarasa mitandao, hii ni chombo kwamba utasikia kuja upendo tangu inakusaidia mchambue yote ya pakiti kwamba ni yaliyo karibu huko nje. Lakini pia inaweza kutumika kwa ajili ya mbaya. Ni rahisi sana tu download mpango huu, Boot it up, kuanza kukamata mtandao, na kuona kila kitu kinaendelea - na kuchuja na kufanya kila aina ya mambo ya kujifurahisha na hayo. kitu ambacho unaweza kufanya na mawasiliano ya wireless si tu unaweza eavesdrop lakini unaweza pia kujifunza jinsi ya kufaidika na mtandao na kuingiza taarifa yako mwenyewe kudhibiti uzoefu kwamba watu wengine kwenye mtandao huo wireless ni kupata. Hebu tuangalie kwamba. Hapa ni Firesheep - ambayo sisi kujua na upendo kutoka wiki iliyopita - ambayo ni kwamba teknolojia eavesdropping. Kama, kwa mfano, tulitaka kikamilifu kuwa guy yetu mbaya go na fujo karibu na moja ya kompyuta hizo, katika hali hii sisi tumepewa kompyuta kujaribu kwenda surf kwa harvard.edu. Kinachotokea ni, kompyuta ya kwanza inapeleka ujumbe kwa wireless router na anasema, hey, mimi nataka kwenda ziara www.harvard.edu. Sema kwa baadhi ya sababu wao ni kujaribu kupata taarifa kuhusu mchezo mwishoni mwa wiki hii. Bad guy, tangu yeye ameketi haki katika katikati, haki ya karibu na kwamba hatua upatikanaji, unaweza kuona kwamba mawasiliano kuja kutoka kwa kompyuta ndani ya router, na yeye anajua, "Aha Somebody! kinaendelea harvard.edu." (Evilly atacheka) Itakuja kuwa hii latency wakati mawasiliano inakwenda kutoka router nje ya Internet kwenda kupata webpage saa harvard.edu-- tu kama wewe guys wote tunajua baada ya kufanya yako psets PHP - na hivyo mtu mbaya ina muda kidogo, kidogo ya dirisha, ambayo anaweza kujibu kwa baadhi ya mambo. Hebu sema hii guy mbaya, bila shaka, ni Yaley. Yeye anajibu kwa harvardsucks.org. Boo! Mbaya, mbaya guy! Bad Yaley! Au hata zaidi, anaweza kujibu na kwamba. [Http://youtu.be/ZSBq8geuJk0]. Mimi itabidi basi guys kufikiri nini kuwa ni. Hii ni kweli teknolojia iitwayo Airpwn! ambayo ilikuwa ilipata kushika nafasi ya moja ya mikutano ya usalama miaka michache nyuma. Kwa Airpwn! uko na uwezo wa kweli odla trafiki nyuma katika mtandao. kompyuta kwamba walikuwa wakijaribu kwenda nje ya Internet na kujaribu kupata na Google.com, kwa Facebook.com, kwa harvard.edu kuona majibu malicious kuja na mara moja kudhani, sawa, hiyo ni jibu kwamba nilikuwa kusubiri kwa na kuishia kupata bidhaa kutoka harvardsucks.org au nameyourfavoriteshocksite.com, na unaweza kuona jinsi ya haraka mambo kuzorota. Yote ya aina hii ya mambo hauwezi kufanyika na haya connections wired kwa sababu pamoja na uhusiano wired ni vigumu Snoop juu kwa trafiki. Kama mimi nina mtu mbaya na kwa upande mmoja ni kompyuta yako na mwisho mwingine ni router yako - Modem yako - njia pekee naweza kupata katika kati ya uhusiano kwamba ni kweli ganga kompyuta yangu katika mahali fulani katikati au kufanya kitu kingine kwa router, led kitu. Lakini pamoja na wireless, inaweza kuwa rahisi kama ameketi katika mstari wa mbele ya darasa, na unaweza kufanya kila aina ya mambo ya nasty watu katika nyuma. Hebu majadiliano kuhusu jinsi unavyoweza kutetea dhidi ya baadhi ya mambo haya. watu ambao maendeleo viwango wireless - 802.11 - wao si watu bubu kwa yeyote kunyoosha wa mawazo. Hii ni ya baridi na teknolojia wakati ilipata kushika nafasi katika 1999, wakatoka kiwango hiki kuitwa WEP. Unaweza kuona hapa wakati wewe kujaribu na kujiunga na mtandao wa wireless, una kila aina ya chaguzi mbalimbali usalama. Hiyo ni aina ya maumivu kwa sababu kuna 6 wote pamoja na kamwe kweli hufanya akili ambayo 1 kujiunga. Hii 1 saa ya juu ni moja ya kwanza kwamba wao kuja na kuitwa WEP. WEP anasimama kwa faragha Wired sawa, naamini, si Wireless encryption Itifaki ambayo ni misnomer kawaida. Kwa sababu anajaribu kuwapa faragha sawa na ulinzi wa usalama sawa na ile ya mtandao wired Na WEP nini mwisho juu kinachotokea ni, una rahisi, kidogo nenosiri aina katika na kuwa mtumishi encrypt yote ya mawasiliano yako kati ya kompyuta yako na router yako. Nini tatizo na WEP ingawa? password na WEP ni kweli mfupi, na pia kila mtu anatumia huo exact password,  na hivyo ni kweli rahisi decrypt. Hivyo haraka sana watu figured kwamba WEP ilikuwa ni tatizo, na sababu tu unaweza kuona ni show up bado juu ya guy hii kidogo ni - kuna baadhi ya mifumo ya wazee kwamba kufanya matumizi WEP - nini unapaswa badala kuwa na kuangalia kwa ni WPA na viwango hata WPA2 kwamba walikuwa iliyotolewa baadaye. Mifumo hii ni ya kwenda vizuri zaidi katika ulinzi juu ya wireless Internet. Alisema, wao bado kufanya kuwa na baadhi hackability. Kuna zana huko nje kwamba unaweza kwenda kufanya hili. Jambo moja hasa kuwa unaweza kuwa nasty ni kwamba kama wewe kuungana na kuthibitishwa kwa wireless router na ni kwa kutumia aina fulani ya mawasiliano encrypted, zinageuka kuwa hacker urahisi kutuma pakiti moja kwa itakuondoa kwenye router, na mara moja wameweza disconnected wewe wanaweza kisha kusikiliza katika - wanaweza vuta pakiti wale kama wewe kujaribu kuanzisha upya uhusiano na router yako. Na kwa taarifa kwamba wanaweza kisha kwenda katika na decrypt mapumziko ya mawasiliano yako. Hii si kwa njia yoyote ya aina yoyote ya salama zaidi ya mawazo yote. Kitu nyingine unaweza kufanya wakati wewe ni kuanzisha mitandao ya wireless au wewe ni kujiunga nao ni - utaona kwamba hapa wakati mimi nina kujiunga na mtandao, anauliza kwa jina la mtandao wangu. Hii pia inajulikana kama SSID. Na unaweza kuona hapa kwamba juu ya haki nina sanduku kwamba inaonyesha mimi SSIDs inapatikana. Kuna Chuo Kikuu cha Harvard, CS50, na CS50 mtandao Wafanyakazi. Sasa, jinsi wengi wenu alijua kulikuwa CS50 Watumishi mtandao duniani? Baadhi yenu. Si nyote. tatizo na hii, bila shaka, ni kwamba alikuwa sisi si kuweka hii up kwenye orodha yetu ya SSIDs, hakuna angejua kuhusu hilo uwezekano mkubwa. Natumaini. Isipokuwa wewe guys wanajaribu wote ufa ndani ya wireless yetu. Lakini hili ni jambo unaweza kufanya hivyo kweli ni muhimu wakati wewe ni kuanzisha router nyumbani. Hii pengine si kutokea kwa miaka michache kwa ajili ya kura ya wewe, lakini kumbuka kwamba kuweka kwamba SSID nje ya hapo na si pia kutaja ni kitu super-kawaida itasaidia kuwalinda salama zaidi katika muda mrefu. wanandoa wa mwisho wa mambo unaweza kufanya. Moja ni HTTPS. Kama wewe ni katika Starbucks, kama wewe ni katika eneo umma wi-fi na huna kuamua kupata benki akaunti yako, kupata Gmail yako, Facebook yako, kuhakikisha kwamba wale connections ni kwenda juu ya HTTPS. Ni safu aliongeza ya usalama, safu aliongeza ya encryption. Jambo moja kukumbuka hapa ni, jinsi wengi wa umewahi clicked kupitia screen kwamba kubwa, nyekundu kuwa anasema, "Tovuti hii inaweza kuwa mbaya." Mimi najua kuwa. Ni pengine wakati wewe ni yote ya kuvinjari kwenda kuona Homeland au kitu kama hicho, sawa? Yeah. (Watazamaji kicheko) Yeah. Kuna kwenda. Tunajua mtu anayetazama Nchi. Hiyo kubwa, nyekundu screen haki pale mara nyingi inaonyesha kwamba kitu funky kinachoendelea. Wakati mwingine ni tu tovuti yenyewe ni uhaba, lakini hiyo kubwa, screen nyekundu inakuja juu wakati watu ni kujaribu mlima mtandao mashambulizi juu yenu. Hivyo kama unaweza kuona kwamba kubwa, screen nyekundu kuja katika Starbucks, usibonyeze kwa njia hiyo. Habari mbaya. Habari mbaya huzaa. Jambo la mwisho kwamba unaweza kuangalia ni aina fulani ya VPN. VPN hii inapatikana kupitia Harvard - vpn.fas.harvard.edu-- na nini hii haina ni kweli itaanzisha uhusiano salama kati ya wewe na Harvard, funnels trafiki yako kwa njia hiyo, na kwamba njia kama wewe ni ameketi katika mahali kama Starbucks unaweza kuunganishwa na Harvard, kupata kwamba trafiki salama, na kisha kuvinjari kutoka Harvard. Tena, si foolproof. Watu wanaweza kupata katikati. Wanaweza kuanza kuvunja, lakini hii ni mbali salama zaidi kuliko kutegemea usalama wa peke wi-fi. Wote haki. Kwa jumla, wakati wewe ni kuanzisha mitandao ya wireless, wakati wewe ni kwenda nje kwa kutumia wireless katika umma - kama ni Starbucks, kama ni Tano Guys, kama ni B.Good, kitu kama hicho - popote wana wi-fi - kuwa na ufahamu wa eneo lako. Kuwa na ufahamu wa nini watu wanaweza kufanya. Na kuwa salama. Je, si kupata benki akaunti yako. Ni inaweza kuwa rude kuamka kama mtu inaonyesha juu na nywila yako ya baadaye. Pamoja na kwamba, kwenda nyekundu! Na mimi naenda kugeuza mambo nyuma juu ya Daudi kwa neno la mwisho. (Applause) [David] Nilidhani ningependa kushiriki jambo moja kutokana na uzoefu binafsi. chombo unaweza kama kwa kucheza na - ingawa Apple ina kiasi kikubwa kutokomezwa suala hili kama wameweza updated programu yako tangu - lakini upande wa mwisho wa hii si kweli kuwa na uwezo wa kuamini programu kwamba sisi kutumia, na kwa pointi Nate wa, kuwa na uwezo wa vuta kidogo kabisa ya nini watu wengine ni kufanya huko nje - hii ilikuwa kipande cha programu kwamba alikuja nje kuhusu iliyopita mwaka-na-nusu sasa. [IPhoneTracker] [http://petewarden.github.com/iPhoneTracker/] Kwa baadhi ya wakati, iTunes - kabla iCloud, wakati walikuwa syncing iPods yako au iphone yako au au iPads yako na iTunes - kwa maslahi ya chelezo, nini iPhone yako na vifaa hivi nyingine wamekuwa wakifanya kwa muda ni kufanya matumizi ya data ya GPS. Wewe wote tunajua kwamba labda iphone yako na Androids na Windows Simu za Mkono na kama siku hizi unaweza kufuatilia ambapo wewe ni katika maslahi ya kuonyesha ramani na sawa - vizuri kile Apple na makampuni haya mengine ya kufanya ni wao kawaida kufuatilia karibu kila mahali ve kweli imekuwa kwa maslahi ya kuboresha ubora wa huduma. Moja, unaweza kupata zaidi ya walengwa na matangazo kama, lakini mbili, wanaweza pia takwimu nje ambapo kuna maeneo yenye wireless katika ulimwengu, na hii inaweza kusaidia kwa geo-mahali - aina ya triangulation ya nafasi ya watu. Long hadithi fupi, sisi wote alikuwa akitembea antena kwa ajili ya baadhi ya kiasi cha muda. Kwa bahati mbaya, Apple alikuwa amefanya uamuzi wa kubuni - au kukosekana kwa - na si kuficha habari hii wakati ilikuwa kuwa backed-up na iTunes. Na kile mtafiti usalama kupatikana mara kwamba hii ilikuwa tu kubwa XML file - kubwa Nakala faili - ameketi katika programu ya watu iTunes, na kama ungekuwa tu kidogo curious, unaweza kwenda poking kuzunguka historia mke wako, historia roommate yako, historia sibling yako na kama, na shukrani kwa programu baadhi ya bure, unaweza njama yote haya kuratibu GPS - latitude na longitude. Hivyo, mimi kwa kweli alifanya hivyo na simu yangu mwenyewe. Mimi plugged katika simu yangu, na uhakika wa kutosha, toleo yangu ya iTunes hakuwa uliosimbwa kwa wakati, na kile alikuwa na uwezo wa kuona walikuwa mwelekeo wangu mwenyewe. Hapa ni Marekani na kila moja ya duru hizi za bluu inawakilisha ambapo mimi kilichotokea kwa kuwa zaidi ya miezi wale uliopita ya kumiliki simu hii ya fulani.  Mimi kutumia muda mwingi, bila shaka, hadi katika Kaskazini, wakati kidogo katika California, safari kortlivade na Texas, na kama wewe kisha kuvuta hii - hii yote ni aina ya faini na ya kuvutia, lakini nilijua hii. Wengi wa marafiki zangu alijua hii, lakini kama wewe kupiga mbizi katika kina kirefu, unaweza kuona ambapo mimi kutumia zaidi ya muda wangu katika Kaskazini. Kama wewe latch kwenye baadhi ya miji ya familiar-kuangalia - hii kubwa, bluu splotch wino kimsingi ni unaozingatia zaidi ya Boston, na kisha mimi kutumia muda kidogo nje katika viunga meremeta nje kutoka Boston. Lakini mimi pia kufanya kidogo kabisa ya kushauriana kwamba mwaka. Na mwaka huu ni seaboard mashariki, na unaweza kuona mimi na iPhone yangu katika mfuko wangu kusafiri na kurudi kati ya Boston na New York na Philadelphia zaidi chini, kama vile matumizi ya muda kidogo likizo juu ya Cape, ambayo ni mkono kidogo kutoka huko. Hivyo, kila moja ya haya dots inawakilisha baadhi mahali ningeli, na kabisa unbeknownst kwangu, historia hii nzima wamekaa tu pale kwenye desktop kompyuta yangu. Kama wewe zoom nje - hii kwa kweli ilikuwa ni kidogo kumsumbua. Sikuwa recollection ya milele kuwa katika Pennsylvania fulani mwaka. Lakini mimi ingawa ngumu kidogo kuhusu hilo na I figured nje, oh, ilikuwa katika ukweli kwamba safari na uhakika wa kutosha, simu yangu alikuwa hawakupata yangu. Apple tangu encrypted habari hii, lakini hii pia ni tu agano kwa kiasi gani taarifa ni kuwa zilizokusanywa kuhusu sisi, na jinsi urahisi - kwa bora au mbaya - ni kukubalika. Moja ya aways kuchukua-hopefully kutoka majadiliano Rob, kutoka katika majadiliano ya Nate na kidogo kuonekana kama leo hii ni kuwa Mjuzi wote zaidi ya hii hivyo kwamba hata kama - kama kwa uhakika wa Rob - we're aina ya Star, haki? Kuna si mengi tunaweza kufanya linapokuja baadhi ya vitisho hivi, lakini mwisho wa siku sisi inabidi uniamini kitu au mtu kama tunataka kweli matumizi ya teknolojia hizi. Angalau tunaweza kufanya maamuzi sahihi na maamuzi mahesabu kama au sisi lazima kweli kuwa kuangalia akaunti hii nyeti hasa au sisi lazima kweli kuwa na kutuma kwamba kidogo mtuhumiwa ujumbe wa papo hapo  katika mazingira wi-fi kama hii. Hivyo, kwa kuwa alisema, moja tu jaribio inabakia, moja hotuba bado. Tutaweza kuona juu ya Jumatano kisha Jumatatu. (Applause na cheers) [CS50TV]