[Powered by Google Translate] [Тыдзень 10]
[David J. малая] [Harvard University]
[Гэта CS50.] [CS50.TV]
>> Усё ў парадку! Гэта CS50, але не нашмат даўжэй.
Гэта пачатак тыдня 10.
У сераду мы нашу віктарыну, а затым у наступны панядзелак у нас ёсць святочны торт
як мы прайшлі поўны круг ўвесь шлях назад ад тыдня нуля.
Сёння мы пагаворым аб адным з маіх любімых тым, па праўдзе кажучы -
, Што бяспека і недатыкальнасць прыватнай жыцця і наступствах ўсіх апаратных сродкаў і праграмнага забеспячэння
што ўсе мы выкарыстоўваем гэтыя дні.
Каб быць сумленным, існуе шмат пагроз там
што, калі вы сапраўды не спыніўся, каб думаць пра іх,
яны на самай справе даволі складана.
Справа ў кропку - калі любы з вас калі-небудзь запампавана частку праграмнага забеспячэння
выключэнне Інтэрнэту і ўсталяваць яго на свой кампутар,
Вы займаліся ў значнай ступені даверу, так?
Існуе нічога Папярэдзіўшы Skype або Chrome, або любой частцы праграмнага забеспячэння
Вы ўсталявалі на свой кампутар, ад проста выдаленне ўсіх файлаў на цвёрдым дыску;
ад загрузкі ўсіх файлаў на цвёрдым дыску, на серверы некаторыя дрэнны хлопец;
чытаць усе вашы лісты, ад перахопу ўсе вашы імгненныя паведамленні.
Таму што рэальнасць сёння з большасцю сучасных аперацыйных сістэм
там сапраўды не так шмат сцяну паміж праграм, якія мы ўсталёўваем,
і вы, і я ў значнай ступені толькі выгляд праз нашы пальцы і прымаючы на ​​веру
, Што прыкладанне мы запампавалі бясплатна, або, што тое, што на 99 цэнтаў,
на самай справе абсалютна спрыяльным.
Але, як мы бачылі праз C, і цяпер PHP і JavaScript,
з гэтай магчымасцю, каб выказаць сябе праграмна,
Вы можаце зрабіць практычна ўсё, што вы хочаце з праграмай, карыстальнік сам ці сама магла зрабіць.
>> Такім чынам, сёння мы арыентуемся на гэтую тэму -
Не толькі некаторыя пагрозы, але і абарону.
Сапраўды, у свеце бяспекі ў цэлым,
там накшталт гэтай кошкі-мышкі,
і я асмельваюся сказаць, што дрэнныя хлопцы амаль заўсёды ёсць нагу.
Калі справа даходзіць да прыняцця перавагі апаратнага і праграмнага забеспячэння на нашы ўласныя персанальныя кампутары,
Мы павінны разумець, што дрэнны хлопец проста трэба знайсці адну простую памылку -
1 эксплуатаваць, адна памылка - у частцы праграмнага забеспячэння мы напісалі або працуе
для таго, каб яму ці ёй ўзяць на сябе ўсю нашу сістэму.
З іншага боку, мы - добрыя хлопцы - трэба залатаць і выправіць усе гэтыя памылкі
і пазбегнуць ўсіх гэтых недахопаў.
І так, я адважуся сказаць, у цэлым, дрэнныя хлопцы маюць перавагу.
Якія класы, як гэта і наступныя класы сапраўды аб
не пра выкладанні вам, як паводзіць бітвы, што гэтыя дрэнныя хлопцы робяць,
але пра тое, як абараніць сябе ці, па крайняй меры, як зрабіць разлічана рашэння
што так, я ведаю, што гэта частка праграмнага забеспячэння, сапраўды можа прачытаць усё мае паведамленні электроннай пошты,
але я ў парадку з гэтым, таму што значэнні гэта прыносіць мне з іншага боку.
>> Я вельмі рады быць злучаныя 2 з найразумнейшых людзей, якіх я ведаю -
Роб Боуден і Nate Хардисон.
Роб збіраецца ўзяць нас на экскурсію па самым нізкім узроўнем бяспекі тэгі -
што і кампілятар, які, да гэтага часу, мы усе прыйшлі да любові і даверу. Роб Боуден.
[Апладысменты]
>> [Роб] Усё ў парадку. Дэвід вельмі шмат прыняты ўсе маё ліхтугах
што я збіраюся пазнаёміць з, але -
Некалькі тыдняў таму вы бачылі прыклад перапаўнення буфера атакі
якая з'яўляецца прыкладам таго, хакер узламаў некаторыя часткі праграмнага забеспячэння
што яны не павінны быць узлому.
Іншы бок гэтай
Часам у вас ёсць праграмнае забеспячэнне, якое шкоднасных сама па сабе.
Ён нават не павінны быць узламаны.
Чалавек, які напісаў праграмнае забеспячэнне хоча ўзламаць вас.
>> Давайце проста скакаць прама ў кодзе,
зірнуць на "login.c".
Тут, дурная праграма, якая правярае імя карыстальніка і пароль.
Тут вы вызначана павінны быць асвоіцца з C зноў для віктарыны.
Па-першае, мы выкарыстоўваем атрымаць радкоў, каб апісаць імя карыстальніка,
Затым мы выкарыстоўваем атрымаць радок, каб захапіць пароль,
а то ў нас некаторыя трывіяльныя праверкі за ўсё, гэта імя карыстальніка "рабаваць"?
І гэта пароль "thisiscs50"?
Ці, гэтае імя карыстальніка "Томі" і пароль "я <3javascript"?
Калі адзін з іх з'яўляецца выпадак,
Затым мы проста будзем друкаваць "Поспех", і тады мы маем доступ.
У адваротным выпадку, мы будзем друкаваць "няправільны лагін", а затым, вядома,
З памяццю эскіз радкоў таНос, мы бясплатна імя карыстальніка і пароль.
Гэта трывіяльная праграма ўваходу ў сістэму,
і калі вы думаеце пра тое, калі вы ўваходзіце ў прыбор,
гэта даволі падобныя - ці нават увайсці ў свой кампутар -
ёсць толькі некаторыя лагін праграма, якая дае вам доступ.
Тут мы, здараецца, ёсць жорстка абрабаваць ',' thisiscs50 ',' Томі ',' я <3javascript,
але, верагодна, ёсць некаторыя файл дзесьці на вашай аперацыйнай сістэме
які мае спіс імёнаў карыстальнікаў, якія могуць увайсці ў сістэму
і спіс пароляў, звязаных з гэтымі імёнамі карыстальнікаў.
Звычайна паролі не проста захоўваюцца ў незашыфраваным выглядзе, як гэта.
Існуе свайго роду шыфраванне, але гэта будзе зрабіць для нашага прыкладу.
>> Хутка ў наш кампілятар -
гэта будзе вельмі проста.
Мы павінны паказаць па крайняй меры некаторыя файлы, якія мы хочам сабраць,
, А затым тут - гэтыя радкі
толькі чытанне файла.
Ён чытае ўвесь файл у адзін вялікі буфер,
і тады мы нулявым сімвалам нашага буфера, як заўсёды,
і, нарэшце, мы проста кампіляцыі файла.
Мы не збіраемся паглядзець, як кампіляцыя сапраўды рэалізаваны,
а як намёк, ён проста выклікае Clang.
Мы збіраемся выкарыстоўваць гэтую праграму для кампіляцыі рэчы, а не Clang.
Адна з праблем, мы пачынаем з тым, што мы бачым, мы хочам, каб скласці наш кампілятар,
Але калі мы не збіраемся выкарыстоўваць Clang, я не ведаю, што я збіраюся сабраць з.
Гэта агульная праблема вядомая як пачатковая загрузка.
Так, толькі ў гэты раз, я збіраюся выкарыстоўваць Clang для кампіляцыі нашага кампілятара.
>> Калі вы лічыце, GCC і Clang -
гэтых праграм, гэтых кампілятараў пастаянна абнаўляюцца,
і тых, кампілятараў складзены з выкарыстаннем GCC і Clang.
Clang з'яўляецца толькі адной вялікай C ці C + + праграм,
так што кампілятар яны выкарыстоўваюць для кампіляцыі, якая Clang.
Тут, зараз, мы проста будзем выкарыстоўваць наш кампілятар для кампіляцыі нашага кампілятара,
і мы можам нават сказаць - '/ кампілятара. »,« compiler.c', 'COMPILE.c', '-о кампілятара.
Заўважце, што гэта дакладная каманды я пабег раней -
проста замяніць Clang с. / кампілятара.
І зараз у нас ёсць іншы кампілятар, але гэта сапраўды так жа.
Гэта проста выклікае Clang.
>> Мы збіраемся выкарыстоўваць наш кампілятар для кампіляцыі нашых ўваходу ў праграму.
Добра - ". / Кампілятар login.c-O лагін".
Такім чынам, нявызначаная спасылка на "GetString".
Ёсць "-lcs50". Добра.
Так што зараз у мяне ёсць наш ўваход у праграму.
Запуск гэтага - атрымаць "Калі ласка, увядзіце ваша імя карыстальніка".
Адным з прыкладаў з'яўляецца Роб. Калі ласка, увядзіце свой пароль - thisiscs50.
І поспех! У мяне ёсць доступ.
Запуск яго зноў і ўводу некаторых няправільны пароль -
ці няправільнае імя карыстальніка і пароль -
няправільны лагін.
Добра. Нічога цікавага пра гэта да гэтага часу.
Але, давайце паглядзім на ўваход зноў -
і гэта будзе некалькі трывіяльны прыклад,
але давайце дадамо яшчэ тут і кажу, інакш, калі ((STRCMP (імя карыстальніка, "хакер") == 0 &&
STRCMP (пароль "LOLihackyou") == 0))
Так што цяпер, Е ("ўзламалі Зараз у вас ёсць доступ да \ п!».); Добра.
Кампіляцыя гэтага - кампілятар login.c-о-уваход lcs50 -
Зараз працуе лагін - і калі я выкарыстоўваю маё імя карыстальніка хакер
і пароль LOLihackedyou -
А я друкую гэта няправільна там раней?
У login.c--ihack - Я зраблю узламаны, таму што я думаю, што зрабіць гэта пазней.
Добра. Перакампілявання.
Паўторны запуск - Хакер - LOLihackedyou -
Узламаны! Зараз у вас ёсць доступ у Інтэрнэт.
>> Там не здаецца, што асаблівай розніцы
таму што гэта сапраўды такі жа чэк я рабіў для іншых карыстальнікаў і паролі.
Акрамя таго, вялікая справа ў тым, што калі іншыя людзі глядзяць на гэтую login.c--
скажам, калі я перадам гэта ад майго партнёра, і яны адкрываюць гэты файл,
і яны чытаюць гэта, яны будуць бачыць - добра, чаму ў вас гэтыя радкі кода тут?
Відавочна, што гэта не тое, што павінна быць у вашай праграме.
У некаторых праграмах - як і любы прапрыетарнае праграмнае забеспячэнне, якое не адкрытым зыходным кодам -
Вы ніколі не ўбачыце гэтых радкоў кода.
Нешта накшталт Skype ці нешта - усе вы ведаеце,
Skype на вашым кампутары, і ёсць толькі некаторыя канкрэтныя імя карыстальніка і пароля камбінацыі
якая будзе ўвайсці ў Skype нейкім асаблівым чынам.
Мы не ведаем пра гэта, і людзі не ведаюць пра гэта,
таму што яны не дабіраюцца, каб чытаць зыходны код, каб убачыць, што там гэта адтуліну.
>> Тое, што мы называем гэта -
хоць гэта не вельмі разумны прыклад -
гэта называецца задняй дзверы.
Калі вы думаеце, праз заднюю дзверы вашага дома.
Вось, калі б я праверкі з імёнамі карыстальнікаў абрабаваць »або« аўтамат »,
, Які быў бы, як з дапамогай "парадную дзверы".
Вось такім чынам я павінен надзейна ўвайсці ў сістэму.
Але калі я ўваходжу з гэтым імем карыстальніка і паролем -
тое, што з дапамогай "заднюю дзверы".
Гэта не было наўмысным спосаб патрапіць у праграму,
але ён усё яшчэ працуе.
І людзі наогул не павінны ведаць пра гэтыя задніх дзвярэй.
Мы збіраемся выправіць гэта.
Давайце вярнуць гэта да нашай першапачатковай login.c,
і давайце паглядзім на наш новы кампілятар. Добра.
Усё, што тут ёсць сапраўды такі жа.
Мы чытанне за ўсё файла ў буфер.
Усё, што тут тое ж самае.
Мы толькі што сабралі файл.
Але зараз у мяне ёсць гэтая вялікая, калі тут
кажа, што, калі файл, што я, аказваецца, з'яўляецца кампіляцыяй login.c,
Затым я раблю нешта асаблівае.
Што гэта нешта асаблівае?
Я бачу тут некалькі радкоў называецца «секчы»,
і, гледзячы на ​​гэтыя радкі кода -
гэта тыя ж радкі кода - Думаю, я зрабіў выкарыстання "ihack ', а не' ihacked« да -
Гледзячы на ​​гэтыя радкі кода,
яны сапраўды такі жа радкоў кода, якія я меў на login.c раней.
Але цяпер, замест таго, каб іх у login.c,
Я збіраюся пакласці іх у свой кампілятар.
>> Гэтыя радкі кода я збіраюся хочаце ўставіць у login.c.
Гэтыя радкі кода - буфер, які першапачаткова знаходзіўся мой login.c
больш не збіраецца быць дастаткова вялікім, таму што цяпер я хачу таксама дадаць гэты хак
ў сярэдзіне маёй праграмы.
Усё гэта робіць стварае новы буфер, які з'яўляецца досыць вялікім -
як для зыходнага файла і дадатковых радкоў кода - секчы - што я хачу, каб ўставіць туды.
Вось што заўважыў -
сімвал * шаблоне = "/ / пазбавіць іх доступу!"
Калі мы азірнемся на login.c,
мы бачым тут гэты каментар - пазбавіць іх доступу!
У login.c, гэты каментар выглядае цалкам бяскрыўдна,
так што вы не падазраяце злога намеру менавіта з гэтага каментара.
Але ў нашым кампілятары, мы адмыслова будзем глядзець на гэты радок кода,
а потым, калі мы знаходзім яго -
гэтыя радкі кода ўстаўкі нашы ўзламаць гэтую пазіцыю.
Такім чынам, мы ітэрацыі па ўсёй login.c,
Мы ўстаўкі, што секчы менавіта там, дзе ён кажа пазбавіць іх доступу,
і тады мы збіраеце - не арыгінальная login.c
але новы login.c з гэтым секчы ўстаўляецца прама ў "пазбавіць іх доступу.
>> Цяпер я хачу, каб скампіляваць мой новы кампілятар, што секчы ўдзел.
Я не збіраюся выкарыстоўваць Clang, так што давайце скапіяваць кампілятар мы выкарыстоўвалі раней
і выкарыстаць яго - так, кампілятар compiler.c COMPILE.c-о evil_compiler.
Цяпер наш злы кампілятар -
калі мы выкарыстоўваем наша зло кампілятар для кампіляцыі любы іншы файл,
Файл будзе складаць, як след.
Гэта зусім нармальна.
Але калі мы выкарыстоўваем наша зло кампілятар для кампіляцыі лагін -
Такім чынам, / evil_compiler login.c-о-уваход lcs50. -
гледзячы на ​​login.c зноў, няма абсалютна нічога тут.
Гэта наша звычайная ', калі гэта альбо абрабаваць або Томі мы знаходзімся ў, інакш мы з'.
Але калі мы запускаем наш выкананы, гэта будзе працаваць, як звычайна.
Запуск зноў - хакер, LOLihackyou -
Узламаны! Зараз у вас ёсць доступ у Інтэрнэт.
Проста гледзячы на ​​login.c, вы не думаеце, што нешта не так.
Але кампілятар, які выкарыстоўваецца для кампіляцыі login.c
спецыяльна распрацаваны, каб ўставіць гэты хак ў праграме.
Мы толькі пераехалі нашы зыходнай задачы.
Першапачаткова ў нас былі гэтыя радкі кода ў login.c, што калі нехта глядзеў на іх,
яны былі б, як, навошта яны тут?
Цяпер, калі хтосьці бывае, каб паглядзець на наш кампілятар,
яны будуць выглядаць у гэтых радках кода і сказаць,
Чаму яны тут?
Такім чынам, мы цалкам не вырашана наша праблема.
Але мы можам выкарыстоўваць гэтую ідэю яшчэ раз.
>> Зірнуўшы на нашу трэцюю версію кампілятара,
гэта тая ж ідэя.
Мы чытаем ўвесь файл у буфер тут,
Мы кампіляцыі файла сюды,
і ў мяне ёсць нейкая радок секчы тут,
але зьвярніце ўвагу на файл, які на самай справе я зараз узлому.
Я ўзлому compiler.c
Ня login.c.
Але тое, што я ўстаўкі ў compiler.c?
Я ўстаўцы гэтага кода, які з'яўляецца дакладнай кода ў нашых папярэдніх кампілятар,
якая павінна была ўставіць код у login.c.
Вось наш, калі STRCMP файл login.c
, А затым ўставіць у login.c рэчы ўзламаць наш.
Гэта новы кампілятар прызначаны для стварэння кампілятараў
, Які прызначаны для кампіляцыі ўваходу зламысна.
Мы ўбачым, чаму гэта дапамагае нам.
Усё астатняе тое ж самае, так што ён працуе менавіта так, як ён працаваў з нашым папярэднім кампілятара.
Мы проста ітэрацыі па ўсёй нашай COMPILE.c.
Але цяпер, замест таго, каб шукаць "пазбавіць іх доступу"
Мы шукаем 'кампіляцыі файла.
Дзе кампіляцыі файла?
Гледзячы на ​​нашы цалкам нявінных compiler.c,
гэта прама тут, унізе.
Гэты каментар - кампіляцыі файла - зноў жа, што выглядае зусім бяскрыўдна.
Але, на наш шкоднасных версію кампілятара,
мы збіраемся - прама перад гэтым заўвагай - уставіць гэты код
, Якая прызначана для ўстаўкі кода пры кампіляцыі login.c.
>> Ёсць шмат узроўняў ўскоснага тут.
Давайце на самай справе запусціць яго.
Зноў жа, мы скапіюем наша арыгінальнае кампілятара.
Цяпер, кампіляцыі - кампілятар compiler.c COMPILE.c-о evilest_compiler -
і цяпер evilest_compiler.
Evilest кампілятар - калі мы будзем выкарыстоўваць для кампіляцыі, што наш кампілятар,
Давайце рэальна глядзець.
Evilest_compiler - у выніку чаго яна скончылася, усе шляхі назад да версіі 1 наш кампілятар -
Версія 1 з нашых кампілятар, які быў толькі што прачытаў у файл і скампіляваць яго.
Вось, мы ведаем, што evilest_compiler - калі ён кампілюе гэты файл -
будзе ўставіць код прама тут, перад кампіляцыі файла,
і гэты код будзе выглядаць гэтак жа, як код ад другой версіі нашага кампілятара
які гэта зрабіў.
Гэты код, які прызначаны для ўзлому ўваходу ў сістэму,
будзе устаўляцца ў наш кампілятар кампілятар evilest.
Давайце выкарыстоўваць evilest_compiler скласці наш кампілятар.
Цяпер мы будзем выкарыстоўваць кампілятар,
вяртацца зноў увайсці ў сістэму,
і памятайце, гэта login.c не мае абсалютна нічога падазронага ў ім.
Але, выкарыстоўваючы наш кампілятар для кампіляцыі login.c,
Роб, thisiscs50, поспех.
Уваход хакер Давайце, LOLihackyou, ўзламалі! Зараз у вас ёсць доступ у Інтэрнэт.
>> Прызнаем, што гэта адрозніваецца ад версіі 2 нашых кампілятара.
Кампілятар мы выкарыстоўваем - давайце рухацца назад - копія ўваходу -
прывядзем наш кампілятар назад сюды.
Выдаленне evilest кампілятара.
Усё, што мы пакінулі ў цяперашні час з'яўляецца кампілятарам.
Калі мы паглядзім на compiler.c,
няма абсалютна нічога няма, што здаецца шкоднасным ў любым выпадку.
Калі мы паглядзім на login.c,
няма абсалютна нічога тут, што выглядае шкоднасны ў любым выпадку.
Але, калі мы выкарыстоўваем наш кампілятар для кампіляцыі login.c,
мы атрымліваем ўразлівымі для нападаў версія login.c.
Калі мы выкарыстоўвалі наш кампілятар для кампіляцыі новай версіі кампілятара,
мы атрымліваем ўразлівымі для нападаў версія кампілятара.
Цяпер, калі мы выходзім і распаўсюджваць нашы кампілятарам выкананага
і ніхто не будзе ведаць, што ёсць нешта шкоднаснае пра гэта.
>> Гэта сапраўды так у - Я не магу ўспомніць год -
Кен Томпсан, і ён атрымаў прэмію Цьюрынга -
калі вы не знаёмыя з Прэмію Цьюрынга, то гэта амаль заўсёды вызначаецца як
Нобелеўская прэмія інфарматыкі, вось як я яе вызначэння.
Кен Томпсан выступіў з прамовай, калі ён атрымаў прэмію Цьюрынга
пад назвай "Роздум аб мэтавай Давер".
У асноўным, гэта была ідэя яго прамовы.
Акрамя замест нашага кампілятара, ён казаў пра GCC -
проста яшчэ адзін кампілятар, як Clang -
і тое, што ён казаў, як і нашы login.c, нашы login.c здаецца адносна бескарысныя
але ён казаў аб фактычным UNIX login.c.
Калі вы ўвайдзіце ў свой прыбор,
ёсць некаторыя ўваходу праграмы, якая працуе.
Гэта быў уваход, што ён меў на ўвазе.
Гэта было ў асноўным яго ідэя.
Ён сказаў, што ў GCC, ён у тэорыі мог бы пасадзілі памылка -
Не памылка, але шкоднасны код -
, Што пры складанні ўваход функцыі - уваход у файл -
бы ўставіць заднюю дзверы, каб ён мог пайсці ў абсалютна любы UNIX сістэмы ў свеце
і ўвайсці з некаторымі канкрэтнымі імя карыстальніка і пароль.
У той час, GCC быў у значнай ступені кампілятар, што кожны выкарыстоўвацца для чаго-небудзь.
Калі хтосьці адбылося абнаўленне GCC,
Затым яны будуць перакампіляваць GCC выкарыстаннем GCC,
і вы ўсё роўна атрымаеце дрэнную версію GCC
таму што гэта было спецыяльна складзена прызнаць, што яна была перакампілявання кампілятара.
І калі вы калі-небудзь выкарыстоўваць GCC перакампіляваць login.c файл,
то было б ўставіць гэтую заднюю дзверы, што ён мог бы выкарыстаць для ўваходу на любы кампутар.
>> Гэта было тэарэтычнае, але і - што асабліва акалічнасць была тэарэтычнае,
але ідэі цалкам рэальныя.
У 2003 годзе быў падобны прыклад, дзе -
мы паглядзім на гэты файл,
і гэта не мае абсалютна нічога на самай справе рабіць з ім, але памылка аналагічная.
Гэты файл толькі вызначае функцыю з імем разрыву.
Ён прымае аргумент, аргумент б,
і намер гэта зрабіць дзеліцца на б.
Але ён робіць некаторыя праверкі памылак,
так што мы ведаем рэчы дзіўна, калі б здарылася роўнай нулю.
Калі б роўны нулю, то мы падзелім гэта на 2 выпадках.
Магчыма, вы ўжо бачыце памылку.
У першым выпадку - калі роўны нулю, то мы робім нуля, падзеленае на нуль,
і мы проста сказаць, што гэта не вызначаны.
Другі выпадак - калі не роўная нулю,
Затым гэта нешта накшталт 1, дзяленне на нуль, і мы проста называем гэта бясконцасць.
Астатняе мы вяртаемся звычайнай дзеліцца на б.
І вось, мы праводзім гэтыя 3 выпадкі,
і мы рэальна працаваць разрыву - гэта крычыць на яго для мяне -
такім чынам, ігнаруючы папярэджання Clang у -
канцы непустое функцыі - мабыць, я не кампіляваць гэта загадзя.
Вярнуцца 0.
Зрабіць дзяліць - усё ў парадку.
С. / разрыву, мы бачым, 3, Infinity, Infinity.
Нуль, дзяленне на нуль не павінны былі вярнуцца бясконцасці.
І калі вы яшчэ не зразумелі, памылка яшчэ - ці не бачылі яго раней -
мы бачым, што мы робім = 0.
Верагодна, мы маем на ўвазе == 0. Магчыма.
>> Але гэта было на самай справе тое, што, зноў жа, у 2003 годзе, Linux ядро ​​-
так што наш прыбор выкарыстоўваецца Linux ядро ​​-
любая аперацыйная сістэма Linux выкарыстоўвае ядро ​​Linux -
так што памылка вельмі падобная на гэтую з'явіўся.
Ідэя гэтая памылка была -
зноў жа, быў толькі некаторыя функцыі, якая была названая, і ён зрабіў некалькі памылак.
Былі некаторыя канкрэтныя матэрыялы, што гэтая праверка памылак -
гэта павінна было быць, як, усё ў парадку, вы не можаце выклікаць гэтую функцыю з дзельнікам 0.
Такім чынам, я збіраюся проста вярнуць некаторыя памылкі.
За выключэннем, гэта было не так нявінныя, як толькі ўстаноўка роўная 0.
Замест гэтага, гэты радок кода ў канчатковым выніку робіць нешта большае, як карыстальнік = адміністратарам.
Або карыстальнік = суперпользователя.
Гэта была нявінная - на першы погляд - памылка, дзе ён мог бы проста былі разумнымі
што я толькі хацеў паведаміць нешта канкрэтнае
калі карыстальнік апынуўся суперпользователя адміністратара.
Але затым зноў думаў пра гэта, чалавек хацеў, каб гэта выглядала як простая памылка друку,
Але калі гэты код быў фактычна вызвалены,
то вы былі б у стане ўзламаць любую сістэму шляхам перадачы канкрэтных сцяг -
У гэтым выпадку B = 0 -
і яна будзе аўтаматычна зрабіць карыстачу адміністратарам,
і тады ён мае поўны кантроль.
Гэта адбылося ў 2003 годзе.
>> Так ужо здарылася, што адзіная прычына, ён быў злоўлены
таму, што там здарылася, некаторыя аўтаматызаваныя сістэмы
, Што заўважылі змены ў гэтым файле
якія ніколі не павінны былі змененыя чалавекам.
Файл павінен быў згенераваны аўтаматычна.
Так ужо здарылася, што хтосьці крануў -
Ну, чалавек, які хацеў ўзламаць крануты, што файл,
і кампутар злавіў, што дакрананне.
Такім чынам, яны змянілі і толькі потым зразумеў, што бедства гэта было б
калі гэта атрымаў у рэальны свет.
>> Вы можаце думаць, што - вяртаючыся да нашага прыкладу кампілятар -
нават калі мы не бачым - гледзячы на ​​зыходны код -
што нічога асаблівага не так,
калі мы на самай справе глядзім на двайковы код кампілятара,
мы ўбачым, што нешта не так.
Напрыклад, калі мы запусцім радкоў функцыянаваць -
якія толькі збіраюцца, каб паглядзець на файл і раздрукаваць ўсе радкі, ён можа знайсці -
калі мы запусцім радкі на наш кампілятар,
мы бачым, што адна радок, што ён знаходзіць гэта дзіўным -
астатняе, калі (STRCMP (імя карыстальніка, "хакер") - бла, бла, бла, бла.
Калі хтосьці апынуўся паранаідальнага дастаткова, каб не давяраць сваім кампілятарам,
яны могуць працаваць радкоў і пераканацца ў гэтым,
і тады яны будуць ведаць, што нешта было не так з фактычнай двайковы.
Але, струны было непазбежна тое, што быў складзены.
Такім чынам, хто скажа, што наш кампілятар не проста больш спецыяльным кодам
, Што кажа, калі радкоў калі-небудзь працаваць на нашым кампілятар, не выводзіць усё, што шкоднасны код.
>> Тая ж ідэя з тым, калі мы хочам рас-сабраць файл -
мы даведаліся, што асэмблер прыносіць нам са збору код машынны код -
мы можам пайсці ў процілеглым кірунку - objdump-D кампілятара -
дасць нам зборку нашага кода.
Гледзячы на ​​гэта,
гэта даволі загадкава, але калі б мы хацелі, мы маглі глядзець праз гэта
і розум, пачакайце, штосьці тут адбываецца, што не варта адбываецца,
і тады мы прызнаем, што кампілятар робіць нешта шкоднаснае.
Але, як струны, хто скажа, objdump не было спецыяльнага рэгістры.
У асноўным, гэта зводзіцца да таго, вы не можаце давяраць чаго-небудзь.
Сутнасць дакумента, які называецца "Давер Давер" з'яўляецца
Увогуле, мы давяраем нашым кампілятарам.
Вы кампіляцыі кода і чакаць яго зрабіць тое, што вы папытаеце яго зрабіць.
Але, чаму вы павінны давяраць кампілятар?
Вы не напісалі кампілятар. Вы не ведаеце, што кампілятар абавязкова на самай справе робіць.
Хто сказаў, што вы можаце давяраць яму?
Але нават тады, ну, можа быць, мы можам давяраць кампілятару.
Ёсць дзесяткі тысяч людзей, якія глядзелі на гэта.
Кто-то, павінна быць прызнана, што нешта адбылося з кампілятарам.
>> Што, калі мы проста ідзем на 1 ўзровень глыбей?
Гэта можа быць нават ваш працэсар.
Як смешна, як гэта магло б быць,
можа быць, ёсць некаторыя ізгояў супрацоўнік Intel, які стварае гэтыя працэсары
што кожны раз, калі працэсар заўважае, што вы працуеце ў некаторых каманд
якая прызначана для ўваходу ў кампутар,
Працэсар будзе прымаць некаторыя канкрэтныя імя карыстальніка і пароль.
Было б дзіка складана,
але хто мог гэта зрабіць.
У гэты момант, вы сапраўды збіраецеся адкрыць свой кампутар, каб паглядзець на працэсар
і выкарыстоўваць мікраскоп, каб прызнаць, што гэтыя схемы не сталі, як яны павінны быць?
Ніхто ніколі не збіраўся злавіць гэтую памылку.
У нейкі момант, вы проста павінны здавацца і давяраць нешта.
Большасць людзей не давяраюць кампілятар ў гэтай кропцы.
То бок, не абавязкова, што вы павінны.
Гледзячы на ​​некалькі сумна вядомага відэа -
[Драматычная музыка, якая грае]
[Гэта UNIX сістэмы. Я ведаю, што гэта.]
[Гэта ўсё файлы -]
Яна сказала: "Гэта UNIX сістэмы. Я ведаю гэта".
Замяніць UNIX з тым, што ваша любімая аперацыйная сістэма -
яна магла б сказаць: «Гэта сістэма Windows. Я ведаю гэта".
Гэта зусім бессэнсоўнае заяву,
але ўсе мы ведаем, яна, здараецца, ведае задняй дзверы ў сістэме UNIX.
Яна ведае, што некаторы імя карыстальніка / пароль спалучэнне, якое дазволіць ёй
рабіць усё, што яна хоча.
>> Добра. Мараль сёння ў асноўным вы не можаце давяраць чаго-небудзь.
Нават рэчы, якія вы пішыце - вам не напісаць кампілятар.
Кампілятар можа быць дрэнна.
Нават калі вы і не напісаў кампілятар, тое, што працуе кампілятар можа быць дрэнна.
(Смяецца) Там не так шмат можна зрабіць.
Свет асуджаны.
Назад да Давіда!
[Апладысменты]
>> [Давід] Дзякуй. Гэта было сапраўды засмучае.
Але на самай справе, Роб з'яўляецца правільным.
Мы сапраўды не маюць рашэння, але вы збіраецеся атрымаць некаторыя рашэнні
да больш агульнай абароны.
У чаканні гэтага, што Нейт і я рабіў за кулісамі існуе
, Ведаючы, што ёсць вельмі шмат наўтбукаў у гэтай зале,
Мы былі нюхаюць ўсе бесправадныя трафік, які праходзіць праз гэты пакой за апошнія 20 хвілін
падчас размовы Роба, таму мы збіраемся ўзяць 2-хвілінны перапынак тут.
Nate збіраецца стварыць, а потым мы будзем казаць аб усіх рэчаў
Мы маглі б знайсці. (Смех)
>> Такім чынам, я, магчыма, перабольшыў крыху толькі дзеля драмы,
але мы маглі нюхаць ўсе вашы бесправадной трафік, таму што, сапраўды,
гэта так проста.
Але ёсць спосабы, якія вы можаце абараніцца ад гэтага, і так з гэтым,
Я даю вам Nate Хардисон. >> [Nate] Sweet.
(Апладысменты)
>> [Nate] Дзякуй, дружа. Я цаню крык.
Усё ў парадку! Гэта гульня тыдні. Вы, хлопцы, распачатай?
Спадзяюся, што гэта будзе вялікая гульня ў суботу.
Я мяркую, вы, хлопцы, у гэтай кропцы - улічваючы, што ў вас ёсць тэст ў сераду
Усе пра код, і мы проста сядзелі праз выдатная лекцыя Rob
з цэлай кучай C код у ім -
, Можа быць, крыху стаміўся ад кода.
У гэтай частцы, мы на самай справе не збіраўся дакранацца любога кода наогул.
Мы проста будзем казаць аб тэхналогіі, якія вы выкарыстоўваеце кожны дзень,
Часта для многіх, многіх гадзін у дзень,
і мы пагаворым пра наступствы бяспекі, што ёсць.
>> Мы шмат казалі аб бяспецы ў працягу семестра,
і мы пачалі з трохі шыфравання.
[Bdoh LV vwlqng!]
І пакуль вы, хлопцы, напэўна, супер-ўсхваляваныя тым, што праходзяць адзін аднаму запіскі
У класе з выкарыстаннем шыфра Цэзара, як гэты,
У рэчаіснасці, ёсць некаторыя больш задавальнення, якое будзе мецца, калі вы на самой справе гаворым аб бяспецы
і ў такім жа родзе.
Сёння мы збіраемся ахапіць некалькі тэхналогій
што людзі на самай справе выкарыстаць у рэальным свеце рабіць ўсе віды рэчаў
ад перахопу пакетаў людзей на самой справе адбываецца ў і
ўзлом людзей банкаўскія рахункі і ўсё такое.
Гэтыя законныя інструменты, якія мы гаворым пра
за выключэннем, магчыма, аднаго прылады.
>> І я проста хачу, каб зрабіць хуткі адмова ад адказнасці.
Калі мы гаворым пра гэтыя рэчы, мы гаворым пра іх, каб вы ведалі, што там,
а вы ведаеце аб тым, як быць у бяспецы, калі вы з дапамогай кампутара.
Але мы дакладна не хочам азначае, што вы павінны выкарыстоўваць гэтыя інструменты
ў інтэрнаце або дома, таму што вы можаце сутыкнуцца з мноствам сур'ёзных праблем.
Гэта адна з прычын, што сёння мы на самай справе не было нюхаць вашыя пакеты.
>> Добра. У мінулы панядзелак, мы гаварылі пра печыва, і HTTP, і аўтэнтыфікацыі,
і як Firesheep адкрывае гэтую вялікую дзверы ў свой уліковы запіс Facebook,
на ваш Hotmail рахунку - калі хтосьці па-ранейшаму выкарыстанні Hotmail -
і многія іншыя рахункі.
Шмат што з гэтага матэрыялу будзе будаваць з таго,
Але, па-першае, я хачу ўзяць кароткі агляд таго, як Інтэрнэт развіваўся з цягам часу.
Яшчэ ў 90-х, вы, хлопцы, маглі б на самай справе ўспомніў падлучэння
кампутарах з адным з іх.
Цяпер мы не будзем рабіць, што так больш.
Гэта на самай справе аказваецца, што для таго, каб падключыць Ethernet кабель у маім ноўтбуку,
У мяне зараз ёсць выкарыстоўваць адзін з гэтых адаптараў якая з'яўляецца своеасаблівай розуму.
>> Замест гэтага, у 1997 годзе ў нас было гэта новае, весела тэхналогіі
Высветлілася, што вядома як IEEE 802.11, так што гэта стандарт бесправадной інтэрнэт
IEEE гэта кіруючы орган, які выдае ўсе віды -
публікуе разнастайныя стандарты ў адносінах да кампутараў.
802 стандартаў усё пра інтэрнэт-тэхналогіях.
Так 802.3, напрыклад, Ethernet стандарту,
802.15.1 я веру, Bluetooth стандарту,
і 802.11 гэта ўсё аб бесправадным доступам у Інтэрнэт.
У 1997 годзе гэта выйшла. Гэта не зусім зразумеў адразу ж.
Ён не быў да 1999 года, а стандартам 802.11b высветлілася, што толькі што атрымаў вельмі папулярныя.
>> Як многія з вас памятаюць, калі кампутары пачалі выходзіць і атрымліваць Wi-Fi на іх?
Гэта было крута, так?
Я памятаю, як мой першы наўтбук ў сярэдняй школе,
і ў яго была бесправадная карта ў ім.
Мой бацька аддаў яго мне і казалі, што я павінен выкарыстоўваць яго для майго каледжа прыкладанні і ўсё гэта,
і я паняцця не меў, як я буду шукаць гэты матэрыял у Інтэрнэце.
Але, на шчасце, у мяне быў бесправадной картай, так што было даволі халаднавата.
У цяперашні час, вы таксама ўбачыце 802.11g, які з'яўляецца адным з іншай вельмі папулярнай
бесправадныя стандарты, якія там.
Абодва б і г у значнай састарэлі ў гэтай кропцы.
Хто-небудзь ведае, якая версія большасць людзей прама цяпер
калі яны купляюць новыя бесправадныя маршрутызатары і ў такім жа родзе?
N. Менавіта так. Бінга. І аказваецца, што пераменнага току стандартных проста выходзіць у форме праекта,
Ёсць і іншыя версіі па дарозе.
З кожным з гэтых стандартаў, што мы набіраюць больш прапускной здольнасці,
больш дадзеных больш хуткімі тэмпамі.
Гэтыя рэчы пастаянна мяняюцца даволі хутка.
Ён таксама робіць так, што мы вымушаны купляць больш маршрутызатараў і ўсё, што прышпільных рэчаў.
>> Давайце пагаворым аб тым, што бесправадная сувязь на самай справе ў яго аснове.
З Ethernet і тыя старыя мадэмы,
вы на самой справе было гэта рэчы, якія вы падключаны да кампутара,
і тады вы падлучаныя да мадэма родаў, а затым падлучыць яго ў гняздо ў сцяне.
Вы павінны былі гэта правадное злучэнне, ці не так?
Увесь сэнс бесправадныя пазбавіцца ад гэтай рэчы.
Для таго, каб рабіць тое, што мы маем, па сутнасці
радыёсувязі, дзе наш бесправадной маршрутызатар -
прызначаным наш маленькі значок бесправадной сувязі -
падлучаны да Інтэрнэту з гэтай цвёрдай стрэлка, якая паказвае нейкі правадное злучэнне,
але пры падключэнні да бесправаднога маршрутызатара
Вы фактычна выкарыстоўваючы амаль як рацыю паміж
вашым кампутарам і бесправадным маршрутызатарам.
Што сапраўды выдатна, пра гэта вы можаце перасоўвацца.
Вы можаце насіць ваш кампутар ўсё больш Сандэрс, пайсці працаваць у Інтэрнэце, што вы хочаце,
гэтак жа, як вы ўсё ведаеце і любіце,
і вы ніколі не павінны быць падлучаныя ні да чаго.
Для таго каб гэта працавала, мы абодва гэтага прыёму і перадачы.
Гэта сапраўды так рацыю.
>> Гэты бесправадной маршрутызатар - які ў Сандэрса сядзіць пад гэтай сцэне, прама тут -
заўсёды вяшчання і прыёму, тэлерадыёвяшчання і сродкаў атрымання,
і таксама, кампутары ўсё робяць, што нешта падобнае, таксама.
Мы проста не можам чуць.
Іншая рэч, якую вы можаце зрабіць, вы можаце мець некалькі кампутараў
гаварыць з той жа бесправадной маршрутызатар.
Чым бліжэй вы знаходзіцеся да маршрутызатара - і зноў жа, гэта радыёсувязь -
Чым бліжэй вы знаходзіцеся, тым лепш сігнал, тым лепш ваш кампутар "чуе" маршрутызатар
і можа ўзаемадзейнічаць з Інтэрнэтам.
Калі вы, хлопцы, усё ў вашым інтэрнаце, у вашым доме, і вы задаўся пытаннем, чаму ваш сігнал дрэнны,
гэта, верагодна, таму, што а). Вы не вельмі блізка да маршрутызатара, або
б). нешта паміж вамі і вашым маршрутызатарам як сцяна цэмент ці нешта
, Які не дапусціць, каб гэтыя радыёхвалі праходзяць.
>> Давайце трохі пагаворым аб тым, чаму дрэнныя хлопцы, як Wi-Fi.
Дрэнныя хлопцы любяць Wi-Fi па некалькіх прычынах.
Вось наш непрыемны дрэннага хлопца прама там.
Адна з прычын, чаму гэта дрэнны хлопец любіць Wi-Fi
Таму што, па змаўчанні, многія бесправадныя маршрутызатары прыйсці і, калі вы ўсталюйце іх,
яны ў незашыфраваным выглядзе.
Гэта была праблема, і былі выпадкі, -
некалькі асобнікаў, то цяпер - дзе дрэнны хлопец адлюстроўвае да нечым доме,
заўважае, што ёсць незашыфраваным Wi-Fi, да якіх яны могуць падлучацца.
Яны падключаюцца да Wi-Fi, а затым яны пачынаюць загрузку усякіх прышпільных рэчаў.
І яны не запампоўваючы кацяняты, яны не запампоўваючы шчанюкоў.
Гэта як BitTorrent. Гэта непрыемны з самых агідных.
Там былі выпадкі, калі ФБР нават атрымаў ўдзельнічае
думаю, што чалавек, які валодае домам на самай справе адной
адбываецца там і загрузка рэчы, якія яны на самой справе быць не павінна.
Пасля незашыфраваным Wi-Fi, безумоўна, не тое, што вы хочаце зрабіць,
калі толькі не мець у ФБР прыйшоў пастукаць у вашу дзверы.
>> Іншая прычына, чаму дрэнныя хлопцы любяць Wi-Fi
з'яўляецца прычынай таго, што Дэвід казаў раней падчас перапынку.
Таму што гэта радыёсувязь па сваёй сутнасці,
калі вы ведаеце канал, вы можаце слухаць гэтую радыёстанцыю.
Напрыклад, калі там дрэнна прама там, седзячы ў сярэдзіне побач з кропкай доступу,
Побач з гэтай бесправадной маршрутызатар, дрэнны хлопец можа слухаць на ўсіх бесправаднога трафіку
што зыходзіць ад усіх гэтых кампутараў.
На самай справе, гэтыя хлопцы - гэтыя нешматлікія шчасліўчыкі, якія знаходзяцца тут у першым шэрагу -
таму што яны супер-блізка да ўсе гэтыя бесправадныя маршрутызатары
, Якія сядзяць прама пад сцэнай,
яны змогуць пачуць усе руху ў гэтым уся пакой
калі вы падлучаныя да Wi-Fi і пачаць прагляд праз гэтыя кропкі доступу.
Гэта не вельмі цяжка сядзець сябе ў добрай пазіцыі, каб панюхаць і высветліць,
тое, што робяць іншыя людзі.
Гэта нешта мець на ўвазе, асабліва калі вы не ўпэўненыя, дзе кропка доступу,
і вы праглядаеце скажам, у Starbucks.
>> Аказваецца, што нюхае, і ўсё, што
Не так ужо і цяжка зрабіць.
Там ёсць праграма пад назвай ТСРйитр якая выводзіць ўсе віды трафіку TCP
і вы можаце запусціць яго даволі проста - гэтак жа, як я зрабіў гэта сёння раніцай.
Вось трохі звалка, і вось некаторыя з трафіку, які ішоў на працягу
мая сетку ў той час.
Вы можаце ўбачыць - калі вы касавокасці вельмі цяжка - ёсць трохі Spotify там.
На вяршыні ТСРйитр - таму што гэта выгляд болі ў выкарыстанні -
ёсць праграма пад назвай Wireshark якіх пучкі усё гэта ў прыемны графічны інтэрфейс.
Wireshark з'яўляецца супер-зручная, так што калі вы ідзяце прыняць сетак класаў,
гэта інструмент, які вы палюбілі, так як гэта дапамагае вам аналізаваць усе пакеты
, Якія плаваюць вакол там.
Але яна таксама можа быць выкарыстана для дрэннага.
Гэта вельмі проста, проста спампаваць гэтую праграму, загрузіць яго,
стварыць сетку захопу, і бачыць усё, што адбываецца -
і фільтраваць і рабіць усякія весела рэчы з ім.
>> Іншая рэч, якую вы можаце зрабіць з бесправадной сувяззю
Не толькі вы можаце падслухоўваць, але вы можаце таксама даведацца, як шруба з сеткай
і ўвесці сваю інфармацыю, каб кіраваць вопытам, што іншыя людзі
на той жа бесправадной сеткі атрымліваюць.
Давайце паглядзім на гэта.
Вось Firesheep - які мы ведаем і любім з мінулага тыдня -
якіх з'яўляецца тое, што падслухоўванне тэхналогіі.
Калі, напрыклад, мы хацелі б актыўна нашы дрэнныя ходу хлопец, і важдацца з
аднаго з гэтых кампутараў,
У гэтым сцэнары ў нас ёсць кампутар спрабуе ісці серфінгу ў harvard.edu.
Што адбываецца, кампутар спачатку пасылае паведамленне да бесправаднога маршрутызатара і кажа:
Гэй, я хачу, каб наведаць www.harvard.edu.
Сказаць па нейкай прычыне яны спрабуюць атрымаць інфармацыю аб гульні ў гэтыя выходныя.
Дрэнны хлопец, так ён сядзіць прама ў сярэдзіне,
Побач з гэтым пунктам доступу, можна ўбачыць, што сувязь бліжэйшыя ад кампутара
ў маршрутызатар, і ён ведае: "Ага! Хтосьці збіраецца harvard.edu". (Злосна смяецца)
Там збіраецца быць гэтая затрымка ў той час як сувязь ідзе ад маршрутызатара
выхад у Інтэрнэт, каб пайсці знайсці вэб-старонкі на harvard.edu--
гэтак жа, як вы, хлопцы, усё ведаем, пасля выканання вашага PHP psets -
і так дрэнны хлопец мае трохі часу, трохі вокны,
, У якой ён можа рэагаваць з некаторымі рэчы.
>> Скажам, гэта дрэнны хлопец, вядома, Yaley.
Ён рэагуе са harvardsucks.org. Boo!
Дрэнны, дрэнны хлопец! Bad Yaley!
Або, што яшчэ горш, ён можа адказаць, што. [Http :/ / youtu.be/ZSBq8geuJk0].
Я паведамлю вам, хлопцы высветліць, што гэта такое.
На самай справе гэта тэхналогія пад назвай Airpwn! якая дэбютавала на
адзін з ахоўнікаў канферэнцыі некалькі гадоў таму.
З Airpwn! Вы ў стане на самай справе ўводзяць трафік у сеткі.
Кампутары, якія спрабавалі выйсці ў інтэрнэт і спрабуюць дабрацца да
Google.com, на Facebook.com, каб harvard.edu
гл. шкоднасных адказ прыйсці і адразу ж выказаць здагадку, добра,
вось і адказ, які я чакаў і ў канчатковым выніку атрымаць ўтрыманне ад
harvardsucks.org або nameyourfavoriteshocksite.com,
і вы можаце бачыць, як хутка будзе пагаршацца.
>> Усе гэтыя віды рэчаў не можа быць зроблена
з гэтымі праваднога злучэння, так як з правадных злучэннем
Цяжка, каб шпіёніць на трафік.
Калі я дрэнны хлопец, і на адным канцы знаходзіцца кампутар
і на другім канцы ваш роутер - мадэм -
Толькі так я магу патрапіць паміж гэтай сувязі з'яўляецца на самай справе злучыць кампутар
У недзе ў сярэдзіне
або зрабіць нешта іншае з маршрутызатарам, то ўніз па цячэнні.
Але з бесправадным, яно можа быць таксама проста, як, седзячы ў першым шэрагу аўдыторыі,
і вы можаце рабіць усякія непрыемныя рэчы людзям у спіну.
>> Давайце пагаворым пра тое, як можна абараніцца ад некаторых з гэтых рэчаў.
Людзі, якія распрацавалі бесправадныя стандарты - 802.11 -
яны не з'яўляюцца нямым людзям любога нацяжкай.
Гэта выдатна тэхналогіі і, калі ён дэбютаваў у 1999 годзе,
яны выйшлі з гэтага стандарту называецца WEP.
Тут можна ўбачыць, калі вы спрабуеце далучыцца да бесправадной сеткі,
у вас ёсць усе віды розных параметраў бяспекі.
Гэта збольшага боль, таму што ёсць 6 ўсе разам
і ён ніколі сапраўды мае сэнс якіх 1 далучыцца.
Гэта 1 на самым версе першае, што яны прыдумалі называецца WEP.
WEP расшыфроўваецца як Wired Equivalent Privacy, я лічу,
Ня бесправадной пратакол шыфравання, які з'яўляецца агульным няправільным.
Таму што ён спрабуе даць вам эквівалентнай прыватнасць і бяспеку абарона
эквівалентным правадной сеткі
З WEP, што заканчваецца гэта адбываецца,
ў вас ёсць просты, маленькі пароль, які вы ўводзіце, і што служыць для шыфравання
ўсе вашы сувязі паміж вашым кампутарам і маршрутызатарам.
>> У чым праблема з WEP, хоць?
Пароль з WEP сапраўды кароткі,
а таксама ўсе, што выкарыстоўвае сапраўды такі жа пароль,
і таму гэта вельмі лёгка расшыфраваць.
Так што вельмі хутка людзі зразумелі, што WEP была праблема,
і адзіная прычына, вы бачыце яго з'яўляцца яшчэ на гэты малы -
Ёсць некалькі старых сістэм, якія сапраўды выкарыстоўваюць WEP -
тое, што вы замест гэтага варта шукаць з'яўляюцца WPA і WPA2 нават стандарты
, Якія былі выпушчаны пазней.
Гэтыя сістэмы з'яўляюцца нашмат лепш пайсці на абарону бесправадной доступ у Інтэрнэт.
Тым не менш, яны ўсё яшчэ маюць некаторыя hackability.
Ёсць інструменты, якія могуць пайсці і зрабіць гэта.
Адна рэч, у прыватнасці, што можа быць брыдка, што
Пры падключэнні і ідэнтыфікацыі ў бесправадных маршрутызатараў і выкарыстання свайго роду
шыфраванай сувязі, высвятляецца, што хакер можа лёгка адправіць адзін пакет
адключыць вас ад маршрутызатара,
і як толькі яны адключаныя вам, што яны могуць слухаць -
яны могуць панюхаць гэтыя пакеты, як вы спрабуеце аднавіць сувязь з вашым маршрутызатарам.
І з гэтай інфармацыяй яны могуць пайсці і расшыфраваць астатняй часткі вашага зносін.
Гэта ні ў якім разе ніякай бяспекі па-за ўсякім ўяўлення.
>> Іншая рэч, якую вы можаце зрабіць, калі вы наладжваеце бесправадных сетак
ці вы далучыцца да іх - вы заўважыце, што тут, калі я далучэнні да гэтай сеткі,
ён запытвае імя маёй сеткі.
Гэта таксама вядома як SSID.
І вы бачыце тут, што ў правай у мяне ёсць акно, якое паказвае мне даступныя SSID.
Там у Гарвардскім універсітэце, CS50, CS50 і персаналу сеткі.
Цяпер, як многія з вас ведаў, што CS50 персаналу сеткі вакол?
Некаторыя з вас. Не ўсе з вас.
Праблема з гэтым, вядома, у тым, што калі б мы не паставіць гэта на наш спіс ідэнтыфікатараў SSID,
ніхто б і не ведаў пра гэта, хутчэй за ўсё.
Я спадзяюся. Калі вы, хлопцы, усё спрабуюць узламаць ў нашай бесправадной сеткі.
Але гэта тое, што вы можаце зрабіць, гэта вельмі важна, калі вы наладжваеце
маршрутызатара ў хатніх умовах.
Гэта, верагодна, не адбудзецца на працягу некалькіх гадоў для многіх з вас,
але майце на ўвазе, што захаванне SSID, што адтуль і таксама не называючы яго
нешта супер-агульны дапаможа трымаць вас у больш бяспечнае ў доўгатэрміновай перспектыве.
>> Канчатковы пару рэчаў, якія вы можаце зрабіць. Адным з іх з'яўляецца HTTPS.
Калі вы знаходзіцеся ў Starbucks, калі Вы знаходзіцеся ў грамадскіх Wi-Fi вобласці
і вы вырашылі зайсці на свой банкаўскі рахунак, доступ да Gmail, ваш Facebook,
Пераканайцеся, што гэтыя злучэнні пераходзяць на HTTPS.
Гэта дадатковы ўзровень бяспекі, дадатковы ўзровень шыфравання.
Адна справа мець на ўвазе, тут,
Як многія з вас калі-небудзь націснуў на аснове, што вялікі, чырвоны экран, які кажа:
"Гэты сайт можа быць дрэнным".
Я ведаю, што ёсць.
Гэта, напэўна, калі вы праглядаеце усё, каб пайсці паглядзець Радзіма або нешта накшталт гэтага, ці не так?
Так. (Смех) Так. Там вы ідзяце. Мы ведаем, хто сочыць за Радзіму.
Гэта вялікі, чырвоны экран тут
Часта паказваецца, што нешта фанкі адбываецца.
Часам гэта проста сам сайт не з'яўляецца бяспечным,
але гэта ж вялікі, чырвоны экран з'яўляецца, калі людзі спрабуюць
Мацаванне сеткавыя атакі на вас.
Так што калі вы бачыце, што вялікі, чырвоны экран прыдумалі ў Starbucks,
Не націскайце праз яго.
Дрэнныя навіны. Дрэнныя навіны нясе.
>> Канчатковы рэч, якую вы можаце паглядзець на
з'яўляецца свайго роду VPN.
Гэта VPN даступныя праз Гарвард - vpn.fas.harvard.edu--
і што яна робіць гэта на самай справе ўсталёўвае абароненае злучэнне
паміж вамі і Гарварда, варонкі трафіку праз яго,
і, такім чынам, калі вы сядзіце на месцы, як Starbucks
Вы можаце далучыцца да Гарварда, атрымліваем, што бяспека руху, а затым перайдзіце ў Гарвардзе.
Зноў жа, не зразумелы. Людзі могуць атрымаць у цэнтры.
Яны могуць пачаць разарваць яго, але гэта значна больш бяспечным, чым спадзявацца на бяспеку
аб Wi-Fi у адзіночку.
>> Добра. У цэлым,
Пры наладзе бесправадных сетак,
калі вы выходзіце на выкарыстанне бесправаднога ў грамадскіх месцах -
будзь то Starbucks, няхай гэта будзе Five Guys, няхай гэта будзе b.good,
нешта ў гэтым родзе - усюды, дзе ў іх ёсць Wi-Fi -
быць у курсе вашага акружэння.
Будзьце ў курсе таго, што людзі могуць зрабіць.
І быць бяспечным. Не атрымаць доступ да банкаўскага рахунку.
Гэта можа быць горкае расчараванне, калі хтосьці з'яўляецца з паролем пазней.
Пры тым, што ідуць малінавыя! І я збіраюся ператварыць рэчы назад да Давіда апошняе слова.
(Апладысменты)
>> [Давід] Я думаў, я б падзяліцца адно з асабістага вопыту.
Інструмент вы хацелі б гуляць з - хоць Apple, у значнай ступені выкараніць гэтае пытанне
калі вы абнавілі праграмнае забеспячэнне з тых часоў -
, А да канца гэтага на самай справе не быць у стане давяраць праграмнае забеспячэнне, якое мы выкарыстоўваем,
і кропкамі Нейт, будучы ў стане нюхаць зусім крыху з таго, што робяць іншыя людзі
там - гэта частка праграмнага забеспячэння, якая выйшла прыкладна год-і-паўтара таму.
[IPhoneTracker] [http://petewarden.github.com/iPhoneTracker/]
На працягу некаторага часу, ITunes - да iCloud, калі вы былі сінхранізацыю плэерах ці Iphones або
або Ipads з Itunes - у інтарэсах рэзервовых копій,
што ваш iPhone і іншых прыладаў гэтыя рабілі на працягу некаторага часу
з выкарыстаннем дадзеных GPS.
>> Вы ўсё ведаеце, можа быць, што ваш iPhone'ов і АНДРОІД і Windows Mobile тэлефонаў
і як у гэтыя дні можна адсочваць, дзе вы знаходзіцеся ў інтарэсах паказвае вам карты
і падобныя - добра, што Apple, і гэтыя іншыя кампаніі робяць гэта
яны звычайна адсочваюць практычна ўсюды вы на самой справе было ў інтарэсах
паляпшэнне якасці абслугоўвання.
Адзін з іх, вы можаце атрымаць больш мэтавай рэкламы і да т.п.,
а два, яны таксама могуць высветліць, дзе ёсць бесправадныя кропкі доступу ў свеце,
і гэта можа дапамагчы ў геаграфічным становішчы - накшталт триангуляции становішча людзей.
>> Карацей кажучы, усе мы ішлі антэны для некаторай колькасці часу.
На жаль, Apple зрабіла дызайнерскае рашэнне - або іх адсутнасць -
ня зашыфраваць гэтую інфармацыю, калі яна была быць рэзервовыя копіі ў Itunes.
І тое, што даследчык бяспекі выявіў, што гэта быў проста велізарны XML-файл -
велізарны тэкставы файл - седзячы ў праграмным забеспячэнні людзей Itunes,
і калі б вы былі проста трохі цікава,
Вы маглі б пайсці калупацца гісторыю вашага мужа, гісторыя вашага суседа па пакоі,
вашага брата гісторыі і да т.п.,
і дзякуючы свабоднае праграмнае забеспячэнне, вы можаце пабудаваць усе гэтыя GPS каардынаты -
шыраце і даўгаце.
>> Такім чынам, я на самой справе зрабіў гэта з маім уласным тэлефонам.
Я падлучаны ў маім тэлефоне, і вядома, мая версія Itunes не быў зашыфраваны ў той час,
і тое, што я быў у стане бачыць, былі мае ўласныя шаблоны.
Вось Злучаных Штатаў і кожны з гэтых сініх колаў ўяўляе
дзе мне давялося былі за гэтыя папярэднія месяцы валодання дадзенага тэлефона.
Я праводжу шмат часу, вядома, у Паўночна-Усходу, некаторы час у Каліфорніі,
нядоўгай паездкі ў Тэхас, і калі затым павялічыць на гэтым -
гэта ўсё накшталт добра і цікава, але я ведаў гэта.
Большасць маіх сяброў ведалі пра гэта, але калі ў вас пагрузіцца ў больш глыбокі,
Вы бачыце, дзе я праводжу большую частку свайго часу на паўночна-ўсходзе.
Калі ў вас зачапіць некаторыя знаёмыя выгляд горада -
гэта вялікі, сіні пляма фарбы па сутнасці па цэнтры Бостана,
а потым я праводжу трохі часу ў прыгарадзе якая выпраменьвае з Бостана.
Але я таксама раблю даволі шмат кансультацый у гэтым годзе.
І ў гэтым годзе на ўсходнім узбярэжжы, і вы можаце бачыць мяне
і мой iPhone ў кішэні падарожжа туды і назад паміж Бостанам і Нью-Ёрку
і Філадэльфіі далей уніз, а таксама праводзіць трохі адпачынак
на мысе, які з'яўляецца маленькай рукой там.
Такім чынам, кожная з гэтых кропак ўяўляе сабой некаторы месца, дзе я быў,
і цалкам неўзаметку для мяне, уся гэтая гісторыя была проста сядзеў там
на маім працоўным стале кампутара.
Калі Вы маштабу - гэта на самай справе было трохі турбуе.
Я не памятаў, каб калі-небудзь быць у Пенсільваніі, што канкрэтны год.
Але я хоць крыху больш складана пра гэта, і я зразумеў, ох, гэта было ў тым, што паездка
і, вядома ж, мой тэлефон злавіў мяне.
>> Apple, з тых часоў зашыфравана гэтая інфармацыя,
але гэта занадта проста сведчанне таго, наколькі шмат інфармацыі, якая збіраецца аб нас,
і як лёгка - да лепшага ці да горшага - гэта прымальна.
Адзін з вынас спадзяюся, ад размоў Роба, ад размоў Нейт
і мала візуальных, як гэта сёння проста каб быць усё больш усведамляюць гэтага
так што нават калі - як кропка Адзежа - we're роду рэзьбавыя, ці не так?
Там не шмат мы можам зрабіць, калі справа даходзіць да некаторых з гэтых пагроз,
але ў канцы дня мы павінны давяраць штосьці ці кагосьці
калі мы сапраўды хочам выкарыстоўваць гэтыя тэхналогіі.
Па крайняй меры, мы можам прымаць абгрунтаваныя рашэнні і разліковыя рашэння або не
Мы фактычна павінны праверыць гэта асабліва адчувальна рахункі
ці мы павінны на самай справе быць адпраўка падазраю, што крыху імгненнае паведамленне
У Wi-Fi навакольнага асяроддзя, як гэта.
>> Такім чынам, з улікам сказанага, проста не застанецца адзін тэст, адна лекцыя застаецца.
Мы будзем бачыць Вас у сераду, то ў панядзелак.
(Апладысменты і воклічы)
[CS50TV]