1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:10,300 >> Лучай Аранго: Добра, хлопцы. 3 00:00:10,300 --> 00:00:11,550 Мяне клічуць Лучана Аранго. 4 00:00:11,550 --> 00:00:13,915 Я на другім курсе ў Adams House. 5 00:00:13,915 --> 00:00:17,550 І мы збіраемся казаць пра вэб-бяспекі актыўнай абароны. 6 00:00:17,550 --> 00:00:24,220 Так што я працую на Упраўленне інфармацыі Бяспеку ў моры. 7 00:00:24,220 --> 00:00:28,670 І на працягу лета, я інтэрнаваныя ў SeguraTec, які быў інфармацыя 8 00:00:28,670 --> 00:00:31,310 ахоўная фірма, якая служыла для Банка Калумбія. 9 00:00:31,310 --> 00:00:34,740 Гэта ў асноўным, дзе я даведаўся, што я даведаўся да гэтага часу. 10 00:00:34,740 --> 00:00:37,990 >> І таму некаторыя з матэрыялу, які мы знаходзімся збіраюся перайсці на сёння, у нас ёсць не 11 00:00:37,990 --> 00:00:39,670 сапраўды казалі ў класе. 12 00:00:39,670 --> 00:00:40,410 Але мы хутка. 13 00:00:40,410 --> 00:00:42,360 Гэта будзе, як SQL, JavaScript. 14 00:00:42,360 --> 00:00:44,870 І мы сапраўды не пайшоў па ёй. 15 00:00:44,870 --> 00:00:47,730 Так што я могуць быць адсартаваныя палёту праз яго, і вы можаце не ведаць некаторыя рэчы. 16 00:00:47,730 --> 00:00:48,890 Але ў бліжэйшы час, вы даведаецеся яго. 17 00:00:48,890 --> 00:00:52,080 І гэта будзе ўсё мае сэнсу. 18 00:00:52,080 --> 00:00:54,010 Таксама яшчэ адна рэч - 19 00:00:54,010 --> 00:00:55,780 застацца этычна. 20 00:00:55,780 --> 00:01:00,560 Некаторыя з рэчаў, якія вы даведаецеся, вы маглі б выкарыстоўваць у не-этычных спосабамі. 21 00:01:00,560 --> 00:01:01,950 >> Калі гэта ваш, безумоўна, паспрабаваць. 22 00:01:01,950 --> 00:01:04,500 Я вызначана матываваць вас, хлопцы паспрабаваць свае ўласныя серверы, паспрабуйце 23 00:01:04,500 --> 00:01:05,519 адбываецца ўнутры іх. 24 00:01:05,519 --> 00:01:08,500 Глядзіце, калі вы можаце пракрасціся іх, калі вы можаце атрымаць у іх. 25 00:01:08,500 --> 00:01:09,560 Але не каго-небудзь яшчэ. 26 00:01:09,560 --> 00:01:12,390 Мянты не вельмі люблю жарты і ўся, мы задушылі гэта тут. 27 00:01:12,390 --> 00:01:14,040 Мы былі важдацца. 28 00:01:14,040 --> 00:01:15,780 Яны атрымліваюць вельмі злы. 29 00:01:15,780 --> 00:01:18,700 >> Так над галавой у гэтым сайце. 30 00:01:18,700 --> 00:01:23,560 У мяне адкрыўся прама тут. 31 00:01:23,560 --> 00:01:26,780 Гэта сайт, і гэта мае кучу прыкладаў. 32 00:01:26,780 --> 00:01:30,000 Што адбываецца, што першы прыклад з'яўляецца свайго роду будзе нашмат прасцей 33 00:01:30,000 --> 00:01:33,470 чым у мінулым, напрыклад, у вядомым сэнсе што першы прыклад 34 00:01:33,470 --> 00:01:34,970 цалкам небяспечна. 35 00:01:34,970 --> 00:01:40,850 І апошні з якіх з'яўляецца свайго роду тое, што нармальны чалавек вэб-бяспекі будзе рабіць. 36 00:01:40,850 --> 00:01:42,760 Але вы ўсё роўна можаце сартаваць з абыйсці гэта. 37 00:01:42,760 --> 00:01:44,860 І мы збіраемся упорам на адзін і два, прыклады адзін і два. 38 00:01:44,860 --> 00:01:49,880 39 00:01:49,880 --> 00:01:49,920 >> ОК. 40 00:01:49,920 --> 00:01:52,780 Давайце пачнем з межсайтовый скріптінга. 41 00:01:52,780 --> 00:01:56,100 JavaScript выконваецца на браўзэр кліента. 42 00:01:56,100 --> 00:01:59,980 Гэта мова праграмавання, які вы выкарыстоўваеце для запуску ў браўзэры кліента так 43 00:01:59,980 --> 00:02:04,120 Вы не павінны абнаўляць сайт і вярнуцца да сервера. 44 00:02:04,120 --> 00:02:04,940 У вас ёсць гэта працуе. 45 00:02:04,940 --> 00:02:08,870 Напрыклад, Facebook, вы не павінны перазагрузіць сайт новым статусе 46 00:02:08,870 --> 00:02:09,710 абнаўлення, каб прыдумаць. 47 00:02:09,710 --> 00:02:12,170 Генераваць Яна выкарыстоўвае наяўнасць усе гэтыя рэчы. 48 00:02:12,170 --> 00:02:16,290 Так што мы можам укараніць шкоднасны JavaScript ў вэб-сайтаў. 49 00:02:16,290 --> 00:02:20,890 І такім чынам, калі мы пасылаем спасылку на хтосьці, мы маглі роду адправіць яго з 50 00:02:20,890 --> 00:02:23,050 частка кода, які мы хочам. 51 00:02:23,050 --> 00:02:26,450 >> Там у ўстойлівымі і непастаянныя JavaScript - 52 00:02:26,450 --> 00:02:30,640 ўстойлівыя і непастаянныя межсайтовый сцэнарыяў, я маю на ўвазе. 53 00:02:30,640 --> 00:02:33,760 А розніца ў тым, што пастаянныя з'яўляецца JavaScript, што будзе 54 00:02:33,760 --> 00:02:36,060 захоўваюцца на вэб-сайце. 55 00:02:36,060 --> 00:02:39,780 І непастаянныя будзе JavaScript што будзе на самой справе проста так адзін раз. 56 00:02:39,780 --> 00:02:41,795 Так што давайце паглядзім на прыкладзе сапраўды хутка. 57 00:02:41,795 --> 00:02:45,660 58 00:02:45,660 --> 00:02:46,130 >> ОК. 59 00:02:46,130 --> 00:02:51,620 Так гэты сайт, проста, нічога не адбываецца тут. 60 00:02:51,620 --> 00:02:53,070 І мы збіраемся, каб паспрабаваць ўставіць некаторыя JavaScript. 61 00:02:53,070 --> 00:02:58,110 Так як мы пачынаем пісаць наяўнасць з'яўляецца мы пачынаем з пачаткам сцэнара. 62 00:02:58,110 --> 00:03:00,570 І мы закрыць яго з дапамогай сцэнарыя. 63 00:03:00,570 --> 00:03:03,770 Мы проста збіраемся змясціць паведамленне - 64 00:03:03,770 --> 00:03:05,410 Я пакажу вам, - 65 00:03:05,410 --> 00:03:06,500 папярэджанне. 66 00:03:06,500 --> 00:03:11,150 Апавяшчэнне гэта функцыя, якая JavaScript выкарыстоўвае для адлюстравання нешта. 67 00:03:11,150 --> 00:03:12,400 Так давайце паспрабуем сапраўды хутка. 68 00:03:12,400 --> 00:03:15,600 69 00:03:15,600 --> 00:03:18,944 Я збіраюся пайсці, абвестка прывітанне. 70 00:03:18,944 --> 00:03:20,400 Ну, я забыўся паставіць - 71 00:03:20,400 --> 00:03:24,510 72 00:03:24,510 --> 00:03:25,460 ОК. 73 00:03:25,460 --> 00:03:26,540 Так вось проста. 74 00:03:26,540 --> 00:03:28,730 >> Ставім наяўнасць на вэб-сайце, і гэта прыдумаў. 75 00:03:28,730 --> 00:03:31,200 І гэта свайго роду адбываецца толькі на нашым сайце, ці не так? 76 00:03:31,200 --> 00:03:33,040 Так што падобна, што гэта не праблема, ці не так? 77 00:03:33,040 --> 00:03:34,920 Я маю на ўвазе, як вы маглі выкарыстоўваць гэта зламысна? 78 00:03:34,920 --> 00:03:39,930 Такім чынам, спосаб, якім хакеры рабіць гэта сапраўды проста. 79 00:03:39,930 --> 00:03:40,970 Яны збіраюцца, каб схапіць яго. 80 00:03:40,970 --> 00:03:43,750 Яны могуць пасылаць гэтую спасылку да вас. 81 00:03:43,750 --> 00:03:46,780 Калі я пашлю гэтую спасылку на вас прама цяпер, і вы адкрываеце яго, ён збіраецца 82 00:03:46,780 --> 00:03:51,620 кажуць, прывітанне, кажучы, што мой сайт кажа вам прывітаньне. 83 00:03:51,620 --> 00:03:57,280 >> І таму, калі я скажу, што-то трохі разумнейшыя, калі б я падцягнуць 84 00:03:57,280 --> 00:03:59,880 JavaScript функцыя Я як бы ўжо пісаў - 85 00:03:59,880 --> 00:04:03,940 але калі вы паглядзіце на яе, я пайду над ім, перш чым я яе напісаў. 86 00:04:03,940 --> 00:04:06,650 Такім чынам, мы збіраемся ўсталяваць тайм-аўт. 87 00:04:06,650 --> 00:04:08,450 Мы збіраемся чакаць пару секунд. 88 00:04:08,450 --> 00:04:13,970 На самай справе, мы не зьбіраемся чакаць, калі Я не памыляюся, пяць секунд. 89 00:04:13,970 --> 00:04:15,870 Гэта ідзе ў мілісэкундах. 90 00:04:15,870 --> 00:04:18,640 А потым, што мы збіраемся зрабіць, гэта мы збіраецца папярэдзіць, што Увайсці 91 00:04:18,640 --> 00:04:21,459 Тайм-аўт, каб зноў увайдзіце 92 00:04:21,459 --> 00:04:23,990 І мы збіраемся, каб змяніць месцазнаходжанне ў іншае месца. 93 00:04:23,990 --> 00:04:30,370 94 00:04:30,370 --> 00:04:32,970 >> Так што, калі я пасылаю гэты сайт, каб хтосьці, яны збіраюцца быць 95 00:04:32,970 --> 00:04:34,380 праглядаюць вакол, спакойна. 96 00:04:34,380 --> 00:04:35,650 Нічога не адбываецца. 97 00:04:35,650 --> 00:04:38,550 І праз пяць секунд, ён збіраецца сказаць, ваша Увайсці скончыўся. 98 00:04:38,550 --> 00:04:40,200 Калі ласка, зноў увайдзіце 99 00:04:40,200 --> 00:04:43,400 Як толькі яны націсніце кнопку ОК, я збіраюся узяць іх на іншы сайт. 100 00:04:43,400 --> 00:04:45,980 Як мяркуецца, сайт збіраецца быць падобная на сайце, што 101 00:04:45,980 --> 00:04:47,280 яны былі раней. 102 00:04:47,280 --> 00:04:50,770 І яны збіраюцца увайсці іх Паўнамоцтвы ў маім вэб-сайце, а ня 103 00:04:50,770 --> 00:04:51,850 іх сайт. 104 00:04:51,850 --> 00:04:54,780 >> І так я магу паслаць людзям па электроннай пошце з гэтай спасылцы. 105 00:04:54,780 --> 00:04:56,240 Я кажу, ну, вось спасылка. 106 00:04:56,240 --> 00:04:57,290 Гэта банк, напрыклад. 107 00:04:57,290 --> 00:05:01,390 Я кажу, вось, ідуць па гэтай спасылцы. 108 00:05:01,390 --> 00:05:03,730 І як толькі яны адправіць яго, яны будзе аглядацца. 109 00:05:03,730 --> 00:05:07,560 Я магу пачакаць на працягу 15 секунд, 20 секунд, а затым поп, што, калі ласка, зноў увайсці ў 110 00:05:07,560 --> 00:05:08,840 падпісаць назад. 111 00:05:08,840 --> 00:05:10,120 Вы, хлопцы, можаце паспрабаваць яго з нашмат больш рэчаў. 112 00:05:10,120 --> 00:05:13,190 Гэта складана, таму што вы, хлопцы, не бачыў наяўнасць, так што вы маглі б 113 00:05:13,190 --> 00:05:14,750 не ведаю, што некаторыя функцыі. 114 00:05:14,750 --> 00:05:18,625 Але ўсё, што вам трэба зрабіць, гэта пачатак са сцэнарам, сканчаюцца сцэнара. 115 00:05:18,625 --> 00:05:22,105 116 00:05:22,105 --> 00:05:25,510 І вы маглі б паставіць што-небудзь у сярэдзіне. 117 00:05:25,510 --> 00:05:27,350 >> Апавяшчэнне з'яўляецца функцыяй, чакаць. 118 00:05:27,350 --> 00:05:29,365 Размяшчэнне вокнаў прывядзе вас на новае месца. 119 00:05:29,365 --> 00:05:31,370 Але вы можаце зрабіць значна больш. 120 00:05:31,370 --> 00:05:32,630 І таму ідэя ў тым, што мы здымі гэта. 121 00:05:32,630 --> 00:05:39,350 Калі я іду ў прыкладзе два, і я пакласці ў гэтым жа кодзе, гэта 122 00:05:39,350 --> 00:05:40,210 не будзе працаваць. 123 00:05:40,210 --> 00:05:43,620 Так што гэта друк ўсё, таму што што гэты сайт першапачаткова 124 00:05:43,620 --> 00:05:50,350 робіць, калі я пастаўлю тут нічога, гэта будзе раздрукаваць яго прама тут. 125 00:05:50,350 --> 00:05:52,390 Так што гэта не друк што-небудзь. 126 00:05:52,390 --> 00:05:55,560 Гэты прыклад фактычна праверкі каб убачыць, калі сцэнар ёсць. 127 00:05:55,560 --> 00:05:57,163 Так што так, ісці наперад. 128 00:05:57,163 --> 00:05:57,606 Спытаеце мяне. 129 00:05:57,606 --> 00:05:59,560 >> АЎДЫТОРЫЯ: не пасылае атрымаць ці адправіць запыт? 130 00:05:59,560 --> 00:06:00,670 >> Лучай Аранго: Так. яны адправіўшы запыт GET. 131 00:06:00,670 --> 00:06:01,350 >> АЎДЫТОРЫЯ: Гэта? 132 00:06:01,350 --> 00:06:02,490 >> Лучай Аранго: Так. 133 00:06:02,490 --> 00:06:04,030 Таксама браўзэры выкарыстоўваюць паштовыя запыты. 134 00:06:04,030 --> 00:06:07,470 Але я спрабую паказаць запыты GET так што мы можам бачыць тое, што 135 00:06:07,470 --> 00:06:10,760 адбываецца на самай справе. 136 00:06:10,760 --> 00:06:12,880 І таму, калі мы глядзім на гэтага кода - так што гэта не працуе больш. 137 00:06:12,880 --> 00:06:24,870 І калі мы зірнем на гэты код, гэта будзе ў другім прыкладзе. 138 00:06:24,870 --> 00:06:29,300 Што гэты чалавек робіць, чалавек адказвае за гэтага браўзэра - 139 00:06:29,300 --> 00:06:35,370 адкрыць, ОК - 140 00:06:35,370 --> 00:06:39,290 замяняе сцэнар слова. 141 00:06:39,290 --> 00:06:42,850 Гэта PHP, якія вы, хлопцы, маглі б бачылі трохі яшчэ. 142 00:06:42,850 --> 00:06:46,250 >> Ён проста замяніўшы Слова скрыпт з імем. 143 00:06:46,250 --> 00:06:50,895 Так, аднак, калі я іду наперад і проста пакласці ў - 144 00:06:50,895 --> 00:06:58,520 145 00:06:58,520 --> 00:07:02,360 калі я хапаю код яшчэ раз, і я збіраюся змяніць яго толькі крыху. 146 00:07:02,360 --> 00:07:15,010 Замест таго, каб сцэнар, я збіраюся змяніць гэта для сцэнара з вялікай літары Р. І 147 00:07:15,010 --> 00:07:16,390 мы збіраемся паглядзець, калі гэты код працуе. 148 00:07:16,390 --> 00:07:19,090 Так што не раздрукаваць яго, які з'яўляецца добрым знакам. 149 00:07:19,090 --> 00:07:21,990 І, спадзяюся, яшчэ ў двух секунд, гэта будзе ўсплываў. 150 00:07:21,990 --> 00:07:22,820 >> Ваш Увайсці скончыўся. 151 00:07:22,820 --> 00:07:23,210 ОК. 152 00:07:23,210 --> 00:07:24,460 Нічога страшнага. 153 00:07:24,460 --> 00:07:27,670 Так праверка на сцэнар можа не абавязкова працаваць. 154 00:07:27,670 --> 00:07:28,130 Чалавек - 155 00:07:28,130 --> 00:07:32,290 ён таксама можа праверыць сцэнара верхнім рэгістры, Сцэнар у ніжнім рэгістры, вул справа 156 00:07:32,290 --> 00:07:34,180 параўнаць, пераканацца, што яны тое ж самае. 157 00:07:34,180 --> 00:07:38,480 Але хакер можа яшчэ зрабіць выгляд, што мы зрабілі ў Vigenere калі мы пераехалі 158 00:07:38,480 --> 00:07:40,620 назад пару знакаў, рухацца наперад. 159 00:07:40,620 --> 00:07:43,470 І гэта можа высветліць, як паставіць сцэнар вярнуцца туды, каб ён мог надаць 160 00:07:43,470 --> 00:07:44,460 што сцэнар. 161 00:07:44,460 --> 00:07:50,370 >> Так што вы хочаце выкарыстоўваць з'яўляецца HTMLSpecialChars да 162 00:07:50,370 --> 00:07:51,330 абараніць ваш сайт. 163 00:07:51,330 --> 00:07:56,490 І тое, што гэта робіць ён робіць упэўнены, што тое, што вы паклалі ў - 164 00:07:56,490 --> 00:07:59,610 напрыклад, цытаты або гэта больш ці менш - 165 00:07:59,610 --> 00:08:04,701 замяняецца чымсьці што не будзе - 166 00:08:04,701 --> 00:08:05,951 дазвольце мне павялічыць тут - 167 00:08:05,951 --> 00:08:08,730 168 00:08:08,730 --> 00:08:09,685 фактычная Ампэрсанд. 169 00:08:09,685 --> 00:08:13,420 Ён заменіць тыя спецыяльныя HTML сімвалы, якія мы ўбачым, калі мы 170 00:08:13,420 --> 00:08:14,670 гаворым пра - 171 00:08:14,670 --> 00:08:18,635 172 00:08:18,635 --> 00:08:20,740 о, гэта збіраецца ўзяць мяне да - 173 00:08:20,740 --> 00:08:24,220 174 00:08:24,220 --> 00:08:25,380 гэтыя сімвалы прама тут. 175 00:08:25,380 --> 00:08:28,180 >> Гэта азначае, што нешта ідзе. 176 00:08:28,180 --> 00:08:31,570 Для HTML, што, пачынаючы кранштэйна кажа нам, што нешта 177 00:08:31,570 --> 00:08:33,299 Звязаных HTML ідзе. 178 00:08:33,299 --> 00:08:33,980 І мы хочам, каб пазбавіцца ад гэтага. 179 00:08:33,980 --> 00:08:36,200 Мы не хочам, каб пакласці HTML у website.k Мы не хочам, каб карыстальнік 180 00:08:36,200 --> 00:08:40,260 стане пакласці што-то ў сваім вэб-сайце што можа паўплываць на іх вэб-сайт, як 181 00:08:40,260 --> 00:08:43,480 сцэнар або HTML ці нешта накшталт гэтага. 182 00:08:43,480 --> 00:08:53,090 Важна тое, што вам саніраваць карыстацкі ўвод. 183 00:08:53,090 --> 00:08:54,720 >> Такім чынам, карыстальнікі могуць ўваходныя шмат рэчаў. 184 00:08:54,720 --> 00:08:58,110 Ён можа ўводзіць кучу рэчаў, каб паспрабаваць падмануць ваш браўзэр у яшчэ 185 00:08:58,110 --> 00:08:59,410 працуе гэты код сцэнара. 186 00:08:59,410 --> 00:09:02,870 Тое, што вы хочаце зрабіць, гэта не проста паглядзець для сцэнара, але паглядзіце на ўсе 187 00:09:02,870 --> 00:09:04,250 што можа быць шкоднасным. 188 00:09:04,250 --> 00:09:06,800 І HTMLSpecialChars зробіць гэта для вас, так што вы не павінны 189 00:09:06,800 --> 00:09:07,340 турбавацца пра гэта. 190 00:09:07,340 --> 00:09:12,280 Але не спрабуйце зрабіць самі роду з вашым уласным кодам. 191 00:09:12,280 --> 00:09:14,055 Ці ўсё ясна, на XSS? 192 00:09:14,055 --> 00:09:14,370 >> ОК. 193 00:09:14,370 --> 00:09:16,355 Пойдзем у ін'екцыі SQL. 194 00:09:16,355 --> 00:09:21,010 Так SQL ін'екцыі, верагодна, нумар адзін ўразлівасць 195 00:09:21,010 --> 00:09:22,490 ў розных вэб-сайтах. 196 00:09:22,490 --> 00:09:24,350 Я маю на ўвазе, добры прыклад - 197 00:09:24,350 --> 00:09:27,350 Я проста даследуючы далей за ўсіх за гэтую справу. 198 00:09:27,350 --> 00:09:34,430 І я знайшоў гэты дзіўны артыкул, дзе Я бачыў, што Гарвард быў парушаны, 199 00:09:34,430 --> 00:09:35,390 быў узламаны. 200 00:09:35,390 --> 00:09:37,370 І мне было цікава, ну, як бы яны гэта робяць? 201 00:09:37,370 --> 00:09:41,660 Гарвардскі самы дзіўны, самы забяспечыць універсітэт калі-небудзь. 202 00:09:41,660 --> 00:09:43,850 Ці не так? 203 00:09:43,850 --> 00:09:45,410 Ну, да парушэння серверы, хакеры выкарысталі 204 00:09:45,410 --> 00:09:47,710 метад, званы ін'екцыі SQL. 205 00:09:47,710 --> 00:09:50,250 >> Так гэта адбываецца на штодзённай аснове. 206 00:09:50,250 --> 00:09:53,590 Людзі забываюць прыняць да ўвагі для ін'екцый SQL. 207 00:09:53,590 --> 00:09:54,930 Гарвардскі робіць. 208 00:09:54,930 --> 00:10:00,050 Я думаю, што тут гаворыцца, Прынстан, Стэнфард, Корнэл. 209 00:10:00,050 --> 00:10:03,550 Так як жа нам - дык што ж гэта SQL ўпырску, што прыносіць усё гэта 210 00:10:03,550 --> 00:10:05,668 людзі ўніз? 211 00:10:05,668 --> 00:10:08,010 ОК. 212 00:10:08,010 --> 00:10:12,090 Так SQL гэта мова праграмавання, што мы выкарыстоўваем для доступу да баз дадзеных. 213 00:10:12,090 --> 00:10:14,560 Што мы робім гэта мы выбіраем - 214 00:10:14,560 --> 00:10:18,510 так што гэта чытае зараз гэта абраць ўсё са стала. 215 00:10:18,510 --> 00:10:22,640 >> SQL, яна ператвараецца ў гэтых базах дадзеных што ёсць сталы, поўныя інфармацыі. 216 00:10:22,640 --> 00:10:26,550 Так абярыце усё, што ад карыстальнікаў дзе імя з'яўляецца імем карыстальніка. 217 00:10:26,550 --> 00:10:28,120 Ці не так? 218 00:10:28,120 --> 00:10:30,770 Досыць проста. 219 00:10:30,770 --> 00:10:34,490 Ідэя ін'екцыі SQL, што мы ўставіць некаторыя шкоднасны код, які будзе 220 00:10:34,490 --> 00:10:37,270 падмануць сервер у працуе нешта іншай, чым на 221 00:10:37,270 --> 00:10:38,430 першапачаткова бег. 222 00:10:38,430 --> 00:10:44,970 Так скажам, імя карыстальніка, мы ўкладваем у або 1 роўная 1. 223 00:10:44,970 --> 00:10:46,700 Так мы апранулі ў сістэму або 1 роўная 1. 224 00:10:46,700 --> 00:10:49,890 Як гэта будзе чытаць цяпер будзе выбраць ад карыстальнікаў, усё, пачынаючы ад 225 00:10:49,890 --> 00:10:51,360 карыстальнікі - гэта і ёсць усё - 226 00:10:51,360 --> 00:10:55,880 дзе імя імя карыстальніка, але імя карыстальніка з'яўляецца або 1 роўная 1. 227 00:10:55,880 --> 00:11:01,760 >> Так імя нічога або 1 роўная 1. 228 00:11:01,760 --> 00:11:04,060 1 роўная 1 заўсёды праўдзіва. 229 00:11:04,060 --> 00:11:07,690 Так што гэта заўсёды будзе вяртаць інфармацыю ад карыстальнікаў. 230 00:11:07,690 --> 00:11:08,100 ОК. 231 00:11:08,100 --> 00:11:10,030 Мы не павінны мець правільнае імя карыстальніка. 232 00:11:10,030 --> 00:11:14,240 Мы можам проста ўсё, што мы хочам, і ён вернецца інфармацыю 233 00:11:14,240 --> 00:11:15,690 што нам трэба. 234 00:11:15,690 --> 00:11:17,160 Давайце паглядзім на іншы прыклад. 235 00:11:17,160 --> 00:11:22,720 >> Калі мы выбраць усе, ад карыстальніка, дзе клічуць DROP карыстальнікі ТАБЛІЦА - 236 00:11:22,720 --> 00:11:26,420 так што вы думаеце гэта будзе рабіць, калі я стаўлю ў імя карыстальніка 237 00:11:26,420 --> 00:11:29,560 як карыстальнікі DROP TABLE? 238 00:11:29,560 --> 00:11:30,230 Любы, ёсць ідэя? 239 00:11:30,230 --> 00:11:31,050 Так. 240 00:11:31,050 --> 00:11:32,470 >> АЎДЫТОРЫЯ: Гэта будзе сказаць гэта зваліць усе табліцы. 241 00:11:32,470 --> 00:11:35,460 >> Лучай Аранго: Гэта будзе казаць нам, скінуць усё на вэб-сайце, 242 00:11:35,460 --> 00:11:38,290 усё ў базе дадзеных. 243 00:11:38,290 --> 00:11:41,910 І тое, што людзі выкарыстоўваюць гэта для - так Я збіраюся паказаць вам, хлопцы. 244 00:11:41,910 --> 00:11:45,462 Я адключыў скінуўшы сталы таму што я не хачу, каб вы 245 00:11:45,462 --> 00:11:48,240 хлопцы падаюць мае табліцы. 246 00:11:48,240 --> 00:11:49,850 Давайце зірнем на гэта. 247 00:11:49,850 --> 00:11:54,410 Так што гэта проста цягне інфармацыю на працягу пэўнага чалавека. 248 00:11:54,410 --> 00:11:57,550 Так як жа нам ведаць, калі гэта пацярпелых ад ін'екцыі SQL. 249 00:11:57,550 --> 00:12:01,545 Мы збіраемся праверыць рэальны хуткі калі мы можам пакласці што-то - 250 00:12:01,545 --> 00:12:04,990 251 00:12:04,990 --> 00:12:06,080 дайце мне скапіяваць гэты код. 252 00:12:06,080 --> 00:12:08,140 Я збіраюся перайсці на яго ў секунду. 253 00:12:08,140 --> 00:12:12,210 Я збіраюся паставіць корань і 1 роўны 1. 254 00:12:12,210 --> 00:12:15,510 >> Гэта прама тут, гэта знак адсотка 23 - 255 00:12:15,510 --> 00:12:19,970 што гэта такое, калі я глядзець прама тут, у - 256 00:12:19,970 --> 00:12:23,820 шлях HTML займае ў лічбах, калі вы зірнуць на, калі я паклаў ў прасторы 257 00:12:23,820 --> 00:12:28,380 тут - калі б я быў з касмічным нешта тут, гэта змяняе яго на два адсоткі. 258 00:12:28,380 --> 00:12:31,420 Вы, хлопцы, бачыце гэта права тут калі я паклаў у прасторы? 259 00:12:31,420 --> 00:12:36,710 Як гэта працуе ў тым, што вы можаце толькі адправіць значэнні ASCII праз HTML. 260 00:12:36,710 --> 00:12:40,330 Такім чынам, ён замяняе, напрыклад, прастору з працэнтаў 20. 261 00:12:40,330 --> 00:12:41,970 Я не ведаю, калі вы, хлопцы бачылі, што раней. 262 00:12:41,970 --> 00:12:45,100 >> Ён замяняе хэштэг з адсоткаў 23. 263 00:12:45,100 --> 00:12:50,840 Нам патрэбен хэштэг ў канцы ці заяву, каб мы маглі сказаць 264 00:12:50,840 --> 00:13:00,885 У базе забыцца закаментаваць гэтая апошняя кропка з коскі ў канцы. 265 00:13:00,885 --> 00:13:03,060 Мы хочам, каб не думаць пра гэта. 266 00:13:03,060 --> 00:13:05,980 Мы проста хочам, каб запусціць ўсе што ў нас ёсць загадзя і 267 00:13:05,980 --> 00:13:07,450 каментаваць гэта. 268 00:13:07,450 --> 00:13:08,710 Давайце зірнем на яго. 269 00:13:08,710 --> 00:13:14,670 >> Так што, калі б я павінен быў пакласці нешта не так - скажам да прыкладу, я паклаў 2 роўна 270 00:13:14,670 --> 00:13:15,690 1, гэта не дае мне нічога. 271 00:13:15,690 --> 00:13:22,930 Калі я паклаў у 1 роўны 1, і гэта робіць вярнуць нешта, гэта кажа мне, што 272 00:13:22,930 --> 00:13:24,660 гэта ўразлівыя для ін'екцыя SQL. 273 00:13:24,660 --> 00:13:29,090 Цяпер я ведаю, што ўсё, што Я паклаў пасля гэтага - 274 00:13:29,090 --> 00:13:39,110 і, напрыклад, выдаляць табліцы ці нешта ў гэтым родзе 275 00:13:39,110 --> 00:13:41,190 , Безумоўна, працаваць. 276 00:13:41,190 --> 00:13:44,350 Я ведаю, што гэта ўразлівыя для ін'екцый SQL таму што я ведаю, што 277 00:13:44,350 --> 00:13:49,850 пад капотам, гэта дазволіць мне зрабіць 1 адпавядае 1 рэч. 278 00:13:49,850 --> 00:13:51,100 ОК? 279 00:13:51,100 --> 00:13:53,950 280 00:13:53,950 --> 00:13:56,540 >> І калі мы паглядзім на гэтыя іншыя, нумар два і нумар тры, гэта 281 00:13:56,540 --> 00:13:59,110 збіраюся зрабіць трохі больш праверкі пад 282 00:13:59,110 --> 00:14:03,680 капот, што гэта такое. 283 00:14:03,680 --> 00:14:07,425 Такім чынам, любы дазваляюць падзенне Усё яшчэ не спрабаваў? 284 00:14:07,425 --> 00:14:08,760 Як вы, хлопцы роду атрымаць SQL яшчэ? 285 00:14:08,760 --> 00:14:10,430 Таму што я ведаю, што вы, хлопцы, значыць не бачылі гэта, так што гэта свайго роду 286 00:14:10,430 --> 00:14:11,759 заблытаным для вас, хлопцы. 287 00:14:11,759 --> 00:14:16,160 288 00:14:16,160 --> 00:14:18,480 Давайце зірнем. 289 00:14:18,480 --> 00:14:21,270 Так у чым жа спосаб прадухіліць SQLI? 290 00:14:21,270 --> 00:14:21,390 ОК. 291 00:14:21,390 --> 00:14:23,330 Так што гэта сапраўды важна, таму што вам хлопцы вызначана хочаце, каб прадухіліць 292 00:14:23,330 --> 00:14:24,090 гэта ў вашых вэб-сайтаў. 293 00:14:24,090 --> 00:14:28,040 >> Калі няма, то ўсе вашыя сябры збіраюцца смяяцца над вамі, калі яны падаюць усё 294 00:14:28,040 --> 00:14:29,390 вашыя табліцы. 295 00:14:29,390 --> 00:14:36,150 Такім чынам, ідэя ў тым, што вам адрамантаваць SQL пэўным чынам, у той час як вы падыходзіце 296 00:14:36,150 --> 00:14:41,940 што карыстач уводзіць з пэўная радок. 297 00:14:41,940 --> 00:14:46,120 Такім чынам, Гэта працуе так вы падрыхтаваць базу дадзеных. 298 00:14:46,120 --> 00:14:50,830 Вы выбіраеце імя, колер і калорый з базы дадзеных пад назвай садавіны. 299 00:14:50,830 --> 00:14:53,580 А потым, калі калорый менш, і мы ставім знак пытання там 300 00:14:53,580 --> 00:14:56,530 кажу, што мы збіраемся ўводу нешта ў секунду. 301 00:14:56,530 --> 00:14:58,850 >> І колер роўных, і мы ставім пытанне Знак кажа, што мы збіраемся 302 00:14:58,850 --> 00:15:00,913 ўваход нешта ў секунду, а таксама. 303 00:15:00,913 --> 00:15:02,660 ОК? 304 00:15:02,660 --> 00:15:09,920 А потым мы выканаць яго, паклаўшы ў 150 і чырвоны. 305 00:15:09,920 --> 00:15:12,820 І гэта будзе правяраць, каб упэўнены, што гэтыя двое - 306 00:15:12,820 --> 00:15:15,300 гэты масіў будзе правяраць, што гэтыя два цэлае і 307 00:15:15,300 --> 00:15:16,550 што гэта радок. 308 00:15:16,550 --> 00:15:18,810 309 00:15:18,810 --> 00:15:20,890 Тады мы ідзем, і мы здабываем усё, мы паклалі яго ў чырвоны колер. 310 00:15:20,890 --> 00:15:21,964 Гэта азначае, што мы здабываем ўсё. 311 00:15:21,964 --> 00:15:26,790 Гэта азначае, што мы на самай справе выканаць SQL заяву і паклаў яго назад у чырвоны колер. 312 00:15:26,790 --> 00:15:30,530 Тут мы робім тое ж самае, але мы зрабіць тое ж самае для жоўтага. 313 00:15:30,530 --> 00:15:32,490 І мы забіраем ўсё. 314 00:15:32,490 --> 00:15:36,140 >> І такім чынам, мы забараніць карыстальніку ад таго, каб ўваходных нешта 315 00:15:36,140 --> 00:15:41,710 гэта не тое, што мы паказана, радок або цэламу ліку, напрыклад. 316 00:15:41,710 --> 00:15:45,100 317 00:15:45,100 --> 00:15:46,610 Я казаў раней пра спадзявацца на іншых. 318 00:15:46,610 --> 00:15:50,010 Калі вы, хлопцы, пачаць свой праект, вы найбольш вызначана збіраюся выкарыстоўваць 319 00:15:50,010 --> 00:15:52,310 загружацца ці нешта падобнае. 320 00:15:52,310 --> 00:15:53,490 Хлопцы, вы калі-небудзь выкарыстоўвалі Wordpress? 321 00:15:53,490 --> 00:15:57,170 Напэўна, вы, хлопцы выкарыстоўвалі Wordpress, хутчэй за ўсё. 322 00:15:57,170 --> 00:16:00,050 Такім чынам, праблема з выкарыстаннем чужыя рэчы - 323 00:16:00,050 --> 00:16:05,940 Я проста хачу, каб Google вельмі хутка Wordpress уразлівасці. 324 00:16:05,940 --> 00:16:07,495 >> Калі б я ажыццявіць гэта прама цяпер - 325 00:16:07,495 --> 00:16:08,995 Я літаральна зрабіў двухсекундный Google. 326 00:16:08,995 --> 00:16:12,300 327 00:16:12,300 --> 00:16:13,800 Мы бачым, што Wordpress - 328 00:16:13,800 --> 00:16:17,450 гэта ад ў верасні '12. 329 00:16:17,450 --> 00:16:19,120 26 абнаўляецца. 330 00:16:19,120 --> 00:16:23,620 У канфігурацыі па змаўчанні Wordpress да 3,6 не перашкаджае іх 331 00:16:23,620 --> 00:16:27,110 некаторыя дадання, якія маглі б зрабіць яго прасцей для 332 00:16:27,110 --> 00:16:29,790 крос-сайт скріптінга атакі. 333 00:16:29,790 --> 00:16:34,530 Так невялікая гісторыя, як толькі мы працавалі с - так што я быў, летам, працуючы 334 00:16:34,530 --> 00:16:34,970 стажыроўкі. 335 00:16:34,970 --> 00:16:40,400 І мы працавалі з роду як вялікай кампаніі крэдытных карт. 336 00:16:40,400 --> 00:16:42,020 >> І яны належаць на тое, што называецца - 337 00:16:42,020 --> 00:16:45,740 Я не ведаю, калі вы, хлопцы калі-небудзь гуляў з прадуктам пад назвай Joomla. 338 00:16:45,740 --> 00:16:51,750 Joomla гэта прадукт, які выкарыстоўваецца для кантроль - свайго роду падобныя на 339 00:16:51,750 --> 00:16:54,340 Wordpress, выкарыстоўваецца для стварэння вэб-сайтаў. 340 00:16:54,340 --> 00:16:56,060 Так у іх быў свой вэб-сайт працуе на Joomla. 341 00:16:56,060 --> 00:16:59,290 На самай справе гэта крэдытныя карты Кампанія ў Калумбіі. 342 00:16:59,290 --> 00:17:01,000 Я вазьму цябе з іх сайт вельмі хутка. 343 00:17:01,000 --> 00:17:04,550 344 00:17:04,550 --> 00:17:05,400 >> Такім чынам, яны выкарыстоўваюцца Joomla. 345 00:17:05,400 --> 00:17:08,630 І яны не абнаўляюцца Joomla ў апошні дадатак. 346 00:17:08,630 --> 00:17:12,160 І таму, калі мы былі зірнуць на іх код, мы змаглі на самай справе 347 00:17:12,160 --> 00:17:18,430 Заходзім ўнутр іх код і выкрасці ўсе Інфармацыя аб крэдытных картах, што ў іх, 348 00:17:18,430 --> 00:17:21,670 ўсе нумары крэдытных карт, імёны, адрасы. 349 00:17:21,670 --> 00:17:22,740 І гэта было толькі - 350 00:17:22,740 --> 00:17:23,569 і іх код выдатна падышло. 351 00:17:23,569 --> 00:17:24,710 У іх была выдатная код. 352 00:17:24,710 --> 00:17:25,389 Гэта было ўсё, бяспекі. 353 00:17:25,389 --> 00:17:26,520 Яны праверылі ўсе базы дадзеных. 354 00:17:26,520 --> 00:17:29,020 Яны пераканаліся, што крос-сайт сцэнарыяў было выдатна. 355 00:17:29,020 --> 00:17:34,390 >> Але яны выкарысталі тое, што не было абнаўляецца, што не быў у бяспекі. 356 00:17:34,390 --> 00:17:36,940 І так, што прывяло іх да - каб вы, хлопцы абавязкова будзем выкарыстоўваць іншыя 357 00:17:36,940 --> 00:17:40,650 код, рамкі чужыя людзей каб стварыць свой вэб-сайт. 358 00:17:40,650 --> 00:17:43,860 Пераканайцеся ў тым, што яны ў бяспецы, таму што часам гэта не вы, той, які 359 00:17:43,860 --> 00:17:44,480 робіць памылку. 360 00:17:44,480 --> 00:17:47,440 Але хто-то робіць памылку, і затым вы падаеце з-за гэтага. 361 00:17:47,440 --> 00:17:51,190 362 00:17:51,190 --> 00:17:53,885 >> Паролі і PII. 363 00:17:53,885 --> 00:17:56,820 Так паролі. 364 00:17:56,820 --> 00:17:58,070 ОК. 365 00:17:58,070 --> 00:17:59,980 366 00:17:59,980 --> 00:18:04,230 Давайце зірнем на паролі сапраўды хутка. 367 00:18:04,230 --> 00:18:04,590 ОК. 368 00:18:04,590 --> 00:18:06,520 Скажыце, калі ласка, што ўсе выкарыстоўвае небясьпечны - 369 00:18:06,520 --> 00:18:09,030 Я спадзяюся, усё тут выкарыстоўвае бяспечныя паролі. 370 00:18:09,030 --> 00:18:12,890 Я проста даючы, што ў якасці здагадкі. 371 00:18:12,890 --> 00:18:14,850 Дык вы, хлопцы, безумоўна, будзе захоўваць паролі для вашых сайтаў. 372 00:18:14,850 --> 00:18:17,440 Вы збіраецеся зрабіць нешта накшталт Увайсці ці нешта накшталт гэтага. 373 00:18:17,440 --> 00:18:19,610 Важна тое, каб не захоўваць паролі ў выглядзе звычайнага тэксту. 374 00:18:19,610 --> 00:18:20,860 Гэта надзвычай важна. 375 00:18:20,860 --> 00:18:23,960 Вы ж не хочаце, каб захаваць пароль у выглядзе звычайнага тэксту. 376 00:18:23,960 --> 00:18:27,370 >> І вы дакладна не хачу захоўваць яго ў адзін бок хэш. 377 00:18:27,370 --> 00:18:32,440 Так што адзін з спосабаў хэш з'яўляецца тое, што, калі вы генераваць словы, калі вы кладзе гэта 378 00:18:32,440 --> 00:18:36,200 Слова ў хэш-функцыі, яна будзе генераваць таму нейкі загадкавы 379 00:18:36,200 --> 00:18:39,390 паведамленне або загадкавы набор ключоў. 380 00:18:39,390 --> 00:18:40,640 Я пакажу вам прыклад. 381 00:18:40,640 --> 00:18:44,620 382 00:18:44,620 --> 00:18:50,250 Я збіраюся хэш яны слова password1. 383 00:18:50,250 --> 00:18:55,280 Так MD5 хэш збіраецца вярнуць мяне нейкі дзіўны інфармацыі. 384 00:18:55,280 --> 00:18:59,140 >> Праблема ў тым, што людзі там што хацелі б выходзіць у вэб-сайты маюць 385 00:18:59,140 --> 00:19:02,750 ўжо высветлілі роду усіх хэшаў MD5. 386 00:19:02,750 --> 00:19:06,030 Тое, што яны гэта яны селі на іх кампутары, і яны хэшируется кожны 387 00:19:06,030 --> 00:19:09,660 адзіна магчымым слова там да яны атрымалі свайго роду, што гэта такое. 388 00:19:09,660 --> 00:19:11,420 Калі б я быў шукаць гэта уверх - 389 00:19:11,420 --> 00:19:12,420 Я проста схапіў гэты хэш. 390 00:19:12,420 --> 00:19:14,120 Калі я атрымаю гэты хэш ад - 391 00:19:14,120 --> 00:19:17,470 калі я іду ў вэб-сайт, і я лічу, гэта хэш, таму што я атрымліваю, каб 392 00:19:17,470 --> 00:19:24,100 базы дадзеных, і я паглядзець яго, хтосьці ўжо зразумеў гэта для мяне. 393 00:19:24,100 --> 00:19:28,600 394 00:19:28,600 --> 00:19:29,100 >> Так. 395 00:19:29,100 --> 00:19:35,030 Такім чынам, людзі селі, і ўсё, што md5 хэш, што вы кладзеце ў, яны збіраюцца 396 00:19:35,030 --> 00:19:37,760 вярнуцца да вас нешта што гэтае слова. 397 00:19:37,760 --> 00:19:39,800 Калі я хэш іншае слова, як - 398 00:19:39,800 --> 00:19:42,410 Я не ведаю, - 399 00:19:42,410 --> 00:19:43,490 trees2. 400 00:19:43,490 --> 00:19:46,050 Я не хачу быць расчараваным на маіх пошукаў Google. 401 00:19:46,050 --> 00:19:49,820 402 00:19:49,820 --> 00:19:52,780 Там гэта, trees2. 403 00:19:52,780 --> 00:19:55,930 Так шмат вэб-сайтаў да гэтага часу выкарыстоўваюць MD5 хэш. 404 00:19:55,930 --> 00:19:57,730 Кажуць, о, гэта бяспечна. 405 00:19:57,730 --> 00:19:58,570 Мы не захоўваць у выглядзе звычайнага тэксту. 406 00:19:58,570 --> 00:19:59,740 У нас ёсць MD5 хэш. 407 00:19:59,740 --> 00:20:01,880 І ўсё, што трэба зрабіць, гэта проста Google колькасць. 408 00:20:01,880 --> 00:20:03,940 >> Я нават не трэба вылічыць сябе. 409 00:20:03,940 --> 00:20:06,790 Я магу толькі Google яго, а хто-то ужо зрабіў гэта для мяне. 410 00:20:06,790 --> 00:20:08,010 Вось куча з іх. 411 00:20:08,010 --> 00:20:09,260 Вось куча пароляў. 412 00:20:09,260 --> 00:20:13,890 413 00:20:13,890 --> 00:20:18,680 Так дакладна не выкарыстоўваць MD5 хэш, таму што ўсе вы павінны 414 00:20:18,680 --> 00:20:19,140 зрабіць, гэта Google гэта. 415 00:20:19,140 --> 00:20:20,390 Так што ж вы хочаце выкарыстоўваць замест гэтага? 416 00:20:20,390 --> 00:20:29,340 417 00:20:29,340 --> 00:20:30,170 ОК. 418 00:20:30,170 --> 00:20:31,260 Тое, што называецца засолкі. 419 00:20:31,260 --> 00:20:32,460 Так што саленні з'яўляецца - 420 00:20:32,460 --> 00:20:36,280 вы, хлопцы, памятаеце, калі мы былі казаць аб выпадковых ў - 421 00:20:36,280 --> 00:20:37,920 Я не ўпэўнены, што PSet гэта было - 422 00:20:37,920 --> 00:20:41,140 быў ён PSet там ці чатыры? 423 00:20:41,140 --> 00:20:45,150 >> Мы гаварылі аб пошуку Іголка ў стозе сена. 424 00:20:45,150 --> 00:20:48,480 І ў PSet, ён сказаў, што вы маглі б на самай справе высветліць, што выпадковая 425 00:20:48,480 --> 00:20:51,840 генеруе, таму што хто-то ўжо пабег выпадковыя мільён разоў і проста 426 00:20:51,840 --> 00:20:53,230 роду сфармавалі тое, што яны вырабляюць. 427 00:20:53,230 --> 00:20:55,840 Тое, што вы хочаце зрабіць, гэта пакласці ў ўваходзе. 428 00:20:55,840 --> 00:20:57,130 Дык вось што саленні роду ёсць. 429 00:20:57,130 --> 00:21:00,900 Яны ўжо зразумелі, што саленні вяртае для кожнай працы. 430 00:21:00,900 --> 00:21:04,750 >> Так што саленні робіць вы паклалі ў солі. 431 00:21:04,750 --> 00:21:06,160 Вы кладзеце ў пэўным слова. 432 00:21:06,160 --> 00:21:09,720 І гэта будзе хэш гэтае слова ў залежнасці ад таго, што вы паклалі ў тут. 433 00:21:09,720 --> 00:21:13,570 Так што калі я хэш пароля адзін з гэтым Прысуд, ён збіраецца хэш 434 00:21:13,570 --> 00:21:17,180 інакш, калі я хэш пароль1 з іншым прапановай. 435 00:21:17,180 --> 00:21:21,670 Гэта свайго роду дае яго кудысьці пачаць для хэшавання, каб пачаць. 436 00:21:21,670 --> 00:21:25,970 Так што гэта нашмат складаней вылічыць, але вы яшчэ можна вылічыць яго, асабліва 437 00:21:25,970 --> 00:21:26,830 калі вы выкарыстоўваеце дрэнны соль. 438 00:21:26,830 --> 00:21:29,650 >> Людзі ўжо таксама высветлілі агульныя солі і высветлілі 439 00:21:29,650 --> 00:21:31,500 што гэта яно і ёсць. 440 00:21:31,500 --> 00:21:34,980 Выпадковыя солі нашмат лепш, але лепшы спосаб складаецца ў выкарыстанні 441 00:21:34,980 --> 00:21:38,160 тое, што называецца склеп. 442 00:21:38,160 --> 00:21:40,480 І тое, што склеп дазваляе рабіць - так што гэтыя функцыі з'яўляюцца 443 00:21:40,480 --> 00:21:41,820 ўжо пабудаваныя для вас. 444 00:21:41,820 --> 00:21:44,910 Многія забываюць, што, або яны забываюць выкарыстоўваць яго. 445 00:21:44,910 --> 00:21:54,520 Але калі я гляджу склеп PHP, склеп ўжо вяртае хэш-радок для мяне. 446 00:21:54,520 --> 00:21:58,790 І гэта на самай справе соліць яго шмат разоў і хэшы яго шмат разоў. 447 00:21:58,790 --> 00:22:00,070 >> Так што мы не павінны рабіць гэта. 448 00:22:00,070 --> 00:22:04,790 Усё, што Вам трэба зрабіць, гэта адправіць яго ў склепе. 449 00:22:04,790 --> 00:22:08,170 І гэта створыць вялікую хэш без Вы турбуючыся аб солі 450 00:22:08,170 --> 00:22:08,990 або што-небудзь. 451 00:22:08,990 --> 00:22:12,000 Таму што, калі б вы былі солі гэта, у вас ёсць памятаць, што соль вы выкарыстоўвалі 452 00:22:12,000 --> 00:22:13,800 таму што калі няма, то вы не можаце атрымаць ваш пароля назад без 453 00:22:13,800 --> 00:22:15,760 соль, якую вы выкарыстоўвалі. 454 00:22:15,760 --> 00:22:17,010 ОК. 455 00:22:17,010 --> 00:22:21,120 456 00:22:21,120 --> 00:22:23,150 >> А таксама асабісты ідэнтыфікаваць інфармацыя. 457 00:22:23,150 --> 00:22:26,730 Так сацыяльнага страхавання, крэдытных карт - гэта даволі відавочна. 458 00:22:26,730 --> 00:22:31,880 Але часам людзі забываюць, як яна Працы ёсць, колькі інфармацыі вы 459 00:22:31,880 --> 00:22:35,690 на самай справе трэба знайсці нейкі адзін чалавек? 460 00:22:35,690 --> 00:22:37,740 Хтосьці правёў даследаванне аб гэта шлях таму. 461 00:22:37,740 --> 00:22:40,870 І гэта было, калі ў вас ёсць поўнае імя, вы не можаце знайсці 462 00:22:40,870 --> 00:22:41,610 хтосьці, што лёгка. 463 00:22:41,610 --> 00:22:43,900 Але што, калі ў вас ёсць поўнае імя і даты іх нараджэння? 464 00:22:43,900 --> 00:22:47,770 Ці дастаткова гэтага, каб вызначыць хтосьці спецыяльна? 465 00:22:47,770 --> 00:22:52,760 >> Што рабіць, калі ў вас ёсць сваё імя і адрас, што яны жывуць на? 466 00:22:52,760 --> 00:22:55,110 Ці дастаткова гэтага, каб знайсці каго-то? 467 00:22:55,110 --> 00:23:02,490 І вось, калі яны падвяргаюць сумневу, што асабістая ідэнтыфікацыйная інфармацыя, а 468 00:23:02,490 --> 00:23:05,360 што вы павінны турбавацца аб не раздаваць? 469 00:23:05,360 --> 00:23:08,770 Калі вы аддаеце нічога ідэнтыфікуюцца інфармацыя, што хто-то дае вам, 470 00:23:08,770 --> 00:23:11,420 вы маглі б патэнцыйна атрымаць пазоў. 471 00:23:11,420 --> 00:23:12,610 І мы, безумоўна, не хочам гэтага. 472 00:23:12,610 --> 00:23:14,955 >> Таму, калі вы кладзе свой сайт па-за, і вы сапраўды выдатна 473 00:23:14,955 --> 00:23:17,230 дызайн, мы спадзяемся, вы зрабілі дзіўны канчатковы праект. 474 00:23:17,230 --> 00:23:18,370 Любы вы як бы хочаце паставіць яго там. 475 00:23:18,370 --> 00:23:21,420 Вы хочаце, каб пераканацца, што ўсе вы прымаеце ад карыстальніка, калі гэта 476 00:23:21,420 --> 00:23:25,310 асабістая ідэнтыфікацыйная інфармацыя, вы хочаце пераканацца, што вы быўшы сапраўды 477 00:23:25,310 --> 00:23:26,560 асцярожныя з ім. 478 00:23:26,560 --> 00:23:29,670 479 00:23:29,670 --> 00:23:31,080 >> Shell ўпырску. 480 00:23:31,080 --> 00:23:31,350 ОК. 481 00:23:31,350 --> 00:23:37,590 Shell ўпырску дазваляе зламысніку атрымаць доступ да вашай фактычнай каманднага радка 482 00:23:37,590 --> 00:23:39,660 ў вашым серверы. 483 00:23:39,660 --> 00:23:44,060 І так ён у стане выконваць код што вы не можаце кантраляваць. 484 00:23:44,060 --> 00:23:49,560 Давайце возьмем прыклад гэтага прыгожая радок прама тут. 485 00:23:49,560 --> 00:23:55,570 Калі мы ідзем на сайт зноў, я буду ўдавацца ў ўкаранення кода. 486 00:23:55,570 --> 00:23:58,910 Дык што ж гэта робіць - 487 00:23:58,910 --> 00:24:00,420 гэта таксама тое, што мы былі гледзячы на ​​перад. 488 00:24:00,420 --> 00:24:11,200 Мы дазваляючы карыстачу паставіць у любой ён хоча, і ён будзе раздрукаваць 489 00:24:11,200 --> 00:24:12,220 што вы хочаце. 490 00:24:12,220 --> 00:24:13,890 >> Так што я збіраюся паставіць на званок. 491 00:24:13,890 --> 00:24:15,540 Гэта трэба, - 492 00:24:15,540 --> 00:24:16,940 ён пачне шляхам аб'яднання. 493 00:24:16,940 --> 00:24:19,520 Так што дазволіць мне працаваць незалежна Каманда Запуск чалавека 494 00:24:19,520 --> 00:24:21,500 да і мая каманда. 495 00:24:21,500 --> 00:24:23,980 І я бягу сістэмную каманду. 496 00:24:23,980 --> 00:24:27,310 І гэтыя апошнія радкі - памятаю тое, што я гаварыў з вамі, хлопцы пра, 497 00:24:27,310 --> 00:24:31,725 у той час як у вас ёсць для кадавання гэта ў метадзе URL. 498 00:24:31,725 --> 00:24:35,010 499 00:24:35,010 --> 00:24:36,992 Калі я запускаю гэта цяпер - 500 00:24:36,992 --> 00:24:39,150 Я пакажу вам сюды - 501 00:24:39,150 --> 00:24:41,100 вы ўбачыце, што я скончыў да запуску каманды. 502 00:24:41,100 --> 00:24:45,700 503 00:24:45,700 --> 00:24:49,320 >> На самай справе гэта фактычнае сервер што мой сайт працуе на. 504 00:24:49,320 --> 00:24:55,840 505 00:24:55,840 --> 00:24:58,510 Такім чынам, мы не хочам, каб, таму што я магу працаваць - 506 00:24:58,510 --> 00:25:00,320 гэты сервер не маё. 507 00:25:00,320 --> 00:25:04,030 Так што я не хачу сапсаваць яго сястра, сервер Маркуса. 508 00:25:04,030 --> 00:25:07,470 Але вы можаце запусціць некалькі каманд што небяспечныя. 509 00:25:07,470 --> 00:25:11,885 І патэнцыйна, можна выдаліць файлы, выдаляць каталогі. 510 00:25:11,885 --> 00:25:14,390 511 00:25:14,390 --> 00:25:17,970 Я магу выдаліць пэўны каталог, калі Я хацеў, але я не хачу 512 00:25:17,970 --> 00:25:19,530 зрабіць гэта з Маркусам. 513 00:25:19,530 --> 00:25:20,420 Ён добры хлопец. 514 00:25:20,420 --> 00:25:21,470 Ён пазычыў мне свой сервер. 515 00:25:21,470 --> 00:25:24,620 Так што я збіраюся дазволіць яму прэч на добры. 516 00:25:24,620 --> 00:25:32,280 >> Так што мы не хочам выкарыстаць - мы не робім хочаце выкарыстоўваць Eval або сістэмы. 517 00:25:32,280 --> 00:25:34,755 Eval або сістэма дазваляе зрабіць гэтыя сістэмныя выклікі. 518 00:25:34,755 --> 00:25:37,410 519 00:25:37,410 --> 00:25:38,410 Кіт сродкі ацэнкі. 520 00:25:38,410 --> 00:25:40,790 Сістэма азначае, што я пабег. 521 00:25:40,790 --> 00:25:42,490 Гэтым кіруе нешта ў сістэме. 522 00:25:42,490 --> 00:25:46,730 Але мы можам аб'явіць па-за законам гэтыя рэчы ў PHP, так што мы не выкарыстоўваем іх. 523 00:25:46,730 --> 00:25:47,400 І загрузка файлаў. 524 00:25:47,400 --> 00:25:49,180 Я збіраўся зрабіць дзіўны рэч з загрузкі файлаў. 525 00:25:49,180 --> 00:25:52,740 Але, як я сказаў вам, хлопцы, мой файл Загрузка рэч не працуе. 526 00:25:52,740 --> 00:25:54,590 Калі б мне прыйшлося загрузіць файл прама цяпер - 527 00:25:54,590 --> 00:25:57,120 528 00:25:57,120 --> 00:26:00,830 калі б я быў, каб загрузіць файл, і гэта карціна - 529 00:26:00,830 --> 00:26:03,180 ў вас ёсць загрузкі рэч вось карціна. 530 00:26:03,180 --> 00:26:03,660 Гэта нармальна. 531 00:26:03,660 --> 00:26:04,280 Нічога не адбываецца. 532 00:26:04,280 --> 00:26:10,840 >> Але калі ў вас ёсць загрузкі файла, для прыклад, і карыстальнік сапраўды дадання 533 00:26:10,840 --> 00:26:19,220 файл PHP або выкананы файл ці нешта так, то вы маглі б патэнцыйна 534 00:26:19,220 --> 00:26:19,740 ёсць праблема. 535 00:26:19,740 --> 00:26:21,390 Гэта працуе да. 536 00:26:21,390 --> 00:26:25,202 На жаль для мяне, гэта не працуе больш. 537 00:26:25,202 --> 00:26:30,230 Калі я, напрыклад, загрузіць гэты файл, я не атрымліваюць дазвол на загрузку 538 00:26:30,230 --> 00:26:33,400 файл у сувязі з серверам ня быць маім. 539 00:26:33,400 --> 00:26:38,670 Такім чынам, хлопец сапраўды разумны. 540 00:26:38,670 --> 00:26:39,610 >> Такім чынам, мы не хочам - 541 00:26:39,610 --> 00:26:40,130 Я збіраюся паказаць вам, хлопцы - 542 00:26:40,130 --> 00:26:41,840 ОК, гэта толькі некаторыя сапраўды выдатна інструменты. 543 00:26:41,840 --> 00:26:45,100 Такім чынам, гэтыя - 544 00:26:45,100 --> 00:26:47,715 ісці ў - калі вы, хлопцы, Firefox - спадзяюся вы робіце. 545 00:26:47,715 --> 00:26:54,260 Там дзве дапаўненні званыя SQL Inject Я і Cross-Site Script мяне. 546 00:26:54,260 --> 00:26:56,870 Яны адкрываюць як мала бок бары на баку. 547 00:26:56,870 --> 00:27:01,480 І калі я павінен быў пайсці ў CS60 напрыклад - 548 00:27:01,480 --> 00:27:04,210 так, што ён робіць гэта выглядае для ўсе формы, якія - 549 00:27:04,210 --> 00:27:07,220 550 00:27:07,220 --> 00:27:08,760 спадзяюся, я не буду атрымліваць ў бядзе для гэтага. 551 00:27:08,760 --> 00:27:09,190 >> Але ОК. 552 00:27:09,190 --> 00:27:12,600 Вось кантактны сістэмы. 553 00:27:12,600 --> 00:27:18,946 Таму, калі я пачынаю шукаць адтуліны ў сістэма, першае, што я раблю, гэта 554 00:27:18,946 --> 00:27:21,820 адкрыць гэты прыгожы невялікі інструмент на баку. 555 00:27:21,820 --> 00:27:24,160 І я збіраюся праверыць формы з аўто нападаў. 556 00:27:24,160 --> 00:27:28,510 І так, што гэта робіць ён будзе павольна адкрыць кучу браўзэраў. 557 00:27:28,510 --> 00:27:29,930 Вось куча браўзэраў. 558 00:27:29,930 --> 00:27:33,320 І ён спрабуе кожны камбінацыю з межсайтовый скріптінга 559 00:27:33,320 --> 00:27:37,380 што магчыма ёсць, калі вы бачыце на баку. 560 00:27:37,380 --> 00:27:42,080 >> І гэта дасць мне вынік накшталт таго, што адказ на гэтае пытанне. 561 00:27:42,080 --> 00:27:42,860 Ўсё пройдзе. 562 00:27:42,860 --> 00:27:43,910 Відавочна, што ўсе яны праходзяць. 563 00:27:43,910 --> 00:27:46,190 Я маю на ўвазе, што яны вельмі разумныя людзі там. 564 00:27:46,190 --> 00:27:48,010 Але калі б мне прыйшлося працаваць - 565 00:27:48,010 --> 00:27:52,050 У мяне было раз, перш чым, калі я запускаю гэта на канчатковых студэнцкіх праектаў. 566 00:27:52,050 --> 00:27:56,080 Я проста запусціць SQL Калі ласка, увядзіце Мяне ўсе розныя нападаў. 567 00:27:56,080 --> 00:28:00,080 І ён спрабуе SQL Inject гэтая выснова сервер. 568 00:28:00,080 --> 00:28:03,590 Так што, калі мы пракруціць ўніз, для Напрыклад, ён кажа - 569 00:28:03,590 --> 00:28:04,960 гэта добра, калі яна вяртае. 570 00:28:04,960 --> 00:28:08,250 >> Так што праверылі некаторыя пэўныя значэння. 571 00:28:08,250 --> 00:28:11,170 І сервер вярнуў Код, які быў адмоўным. 572 00:28:11,170 --> 00:28:11,780 Выдаліць часова. 573 00:28:11,780 --> 00:28:13,030 Гэта добра. 574 00:28:13,030 --> 00:28:17,050 575 00:28:17,050 --> 00:28:20,750 Ён спрабуе ўсе гэтыя тэсты. 576 00:28:20,750 --> 00:28:21,790 Такім чынам, можна проста запусціць - 577 00:28:21,790 --> 00:28:27,860 Я хацеў бы знайсці сайт агенства хутка, што дазволіць мне - 578 00:28:27,860 --> 00:28:29,110 можа быць, CS50 краму. 579 00:28:29,110 --> 00:28:43,890 580 00:28:43,890 --> 00:28:45,711 >> Нічога сабе, гэта будзе прыняць занадта доўга. 581 00:28:45,711 --> 00:28:53,090 582 00:28:53,090 --> 00:28:55,130 Я дам першы тэст ня скончыць правоў. 583 00:28:55,130 --> 00:28:57,330 Так што гэта скардзіцца. 584 00:28:57,330 --> 00:28:58,470 Такім чынам, гэтыя тры рэчы. 585 00:28:58,470 --> 00:29:00,430 Гэтыя інструменты з'яўляюцца бясплатнымі. 586 00:29:00,430 --> 00:29:03,960 Вы можаце спампаваць іх і запусціць іх на ваш сайт, і ён скажа вам, калі 587 00:29:03,960 --> 00:29:06,650 ў вас ёсць крос-Site Scripting, калі ў вас ёсць SQL, калі ў вас ёсць 588 00:29:06,650 --> 00:29:07,900 нешта падобнае. 589 00:29:07,900 --> 00:29:12,230 590 00:29:12,230 --> 00:29:14,500 Я як бы сапсаваць. 591 00:29:14,500 --> 00:29:15,550 >> Што важна - 592 00:29:15,550 --> 00:29:17,900 Такім чынам, ніколі не давярайце карыстальніку. 593 00:29:17,900 --> 00:29:21,920 Незалежна карыстальнік ўводзіць для вас, зрабіць што вы дэзінфікаваць яго, вы ачысціце яго, 594 00:29:21,920 --> 00:29:25,300 Вы праверце правільныя рэчы, што гэта дае вам тое, што вы 595 00:29:25,300 --> 00:29:28,240 хачу, каб ён даў вам. 596 00:29:28,240 --> 00:29:32,460 Заўсёды быць у курсе таго, што рамкі што вы на самай справе з дапамогай. 597 00:29:32,460 --> 00:29:34,630 Калі вы выкарыстоўваеце нешта накшталт пачатковай загрузкі - 598 00:29:34,630 --> 00:29:36,340 Я ведаю, вы, хлопцы, збіраецеся выкарыстоўваць загружацца, таму што ён збіраецца пайсці 599 00:29:36,340 --> 00:29:38,140 над гэтым у бліжэйшы час у класе - 600 00:29:38,140 --> 00:29:43,120 і Wordpress ці нешта ў гэтым родзе, звычайна гэта можа быць узламаны. 601 00:29:43,120 --> 00:29:44,770 >> І тады вы нават не ведаеце. 602 00:29:44,770 --> 00:29:45,800 Ты проста працуе свой сайт. 603 00:29:45,800 --> 00:29:47,360 І гэта зусім бяспечна. 604 00:29:47,360 --> 00:29:51,730 І вы ідзяце ўніз. 605 00:29:51,730 --> 00:29:54,000 Так што я на рыбалку вельмі рана. 606 00:29:54,000 --> 00:29:55,770 Але я хачу падзякаваць PenTest Labs. 607 00:29:55,770 --> 00:29:58,140 Я збіраюся паказаць вам, рабяты нешта называецца PenTest Labs. 608 00:29:58,140 --> 00:30:05,000 Калі вы, хлопцы сапраўды зацікаўлены ў што бяспека на самай справе, ёсць 609 00:30:05,000 --> 00:30:07,300 вэб-сайт пад PenTest Labs калі вы, хлопцы, ісці да яе прама цяпер. 610 00:30:07,300 --> 00:30:10,730 Ну, гэта не тое. 611 00:30:10,730 --> 00:30:12,030 Я проста хачу, каб запусціць яго, як гэта. 612 00:30:12,030 --> 00:30:14,400 Google кажа мне адказ. 613 00:30:14,400 --> 00:30:16,590 >> ОК. 614 00:30:16,590 --> 00:30:19,030 І яна вучыць выкарыстоўваць вас - дык гэта кажа, навучыцца вэб-пранікненне 615 00:30:19,030 --> 00:30:21,060 тэставанне на правільным шляху. 616 00:30:21,060 --> 00:30:23,650 Яна вучыць, - 617 00:30:23,650 --> 00:30:25,150 спадзяюся, вы маральнай асобай. 618 00:30:25,150 --> 00:30:29,200 Але яна вучыць, як вы можаце паглядзець на як вы можаце атрымаць ўнутры вэб-сайтаў. 619 00:30:29,200 --> 00:30:31,130 І калі вы даведаецеся, як можна трапіць ўнутр сайты, вы можаце даведацца, як 620 00:30:31,130 --> 00:30:34,960 абараніць сябе ад атрымання ўнутры вэб-сайтаў. 621 00:30:34,960 --> 00:30:39,100 Дазвольце мне павелічэння, таму што, можа быць, вы, хлопцы, ня гледзячы на ​​гэта права. 622 00:30:39,100 --> 00:30:46,350 >> Ад ін'екцыі SQL раскашэліцца, так роду, як я магу атрымаць ад SQL 623 00:30:46,350 --> 00:30:48,530 ўпырску раскашэліцца. 624 00:30:48,530 --> 00:30:53,890 І вы спампаваць гэтую віртуальную машыну. 625 00:30:53,890 --> 00:30:55,690 І віртуальная машына ўжо ідзе з вэб-сайтам, што ты 626 00:30:55,690 --> 00:30:56,780 збіраюся паспрабаваць яго. 627 00:30:56,780 --> 00:30:58,030 Вы спампаваць гэты файл PDF. 628 00:30:58,030 --> 00:31:03,610 629 00:31:03,610 --> 00:31:08,370 І ён пакажа вам парадкова, што што вам трэба зрабіць, што вы праверыць. 630 00:31:08,370 --> 00:31:14,560 Гэта тое, што зламыснік на самай справе робіць, каб патрапіць унутр сайце. 631 00:31:14,560 --> 00:31:15,750 >> І некаторыя з гэтых рэчаў з'яўляецца складаным. 632 00:31:15,750 --> 00:31:17,520 Я хацеў бы перайсці больш рэчы з вамі, хлопцы. 633 00:31:17,520 --> 00:31:21,090 Але я хвалююся, што вы, хлопцы, ёсць на самай справе не - 634 00:31:21,090 --> 00:31:23,090 гэта тое, што я падышоў з вы, хлопцы, вэб-тэсты 635 00:31:23,090 --> 00:31:26,830 для тэставання на пранікненне. 636 00:31:26,830 --> 00:31:33,540 Не ведаю, што SQL з'яўляецца і тое, што - 637 00:31:33,540 --> 00:31:35,960 Семінар Карла Джэксана ўзрушаючая таксама. 638 00:31:35,960 --> 00:31:37,360 Вы, хлопцы, не ведаю, накшталт пра тое, што гэта такое. 639 00:31:37,360 --> 00:31:39,450 Але калі вы ідзяце на гэты сайт, і вы спампаваць гэтыя навучальныя праграмы і іх 640 00:31:39,450 --> 00:31:43,290 PDF-файлы, вы можаце зірнуць на свайго роду што плошча бяспекі сапраўды 641 00:31:43,290 --> 00:31:46,940 ў тэставанне на пранікненне, паглядзець, як вы можаце атрымаць ўнутры вэб-сайтаў і абароны 642 00:31:46,940 --> 00:31:48,020 сябе ад яго. 643 00:31:48,020 --> 00:31:56,360 >> Так што калі я раблю супер хуткі агляд, гэта будзе прадухіліць крос-Site Scripting. 644 00:31:56,360 --> 00:32:00,160 Вы хочаце выкарыстоўваць HTMLSpecialChars кожны тайм карыстач уводзіць нешта. 645 00:32:00,160 --> 00:32:01,580 Прадухіленне ін'екцыі SQL. 646 00:32:01,580 --> 00:32:04,510 Калі вы зробіце гэта, вы ўжо лепш, чым Гарвард быў 647 00:32:04,510 --> 00:32:06,530 калі яны атрымалі парушаныя. 648 00:32:06,530 --> 00:32:10,510 І пераканайцеся, што вашыя паролі не ў выглядзе звычайнага тэксту. 649 00:32:10,510 --> 00:32:16,220 Пераканайцеся, што вы не толькі адзін спосаб хэш іх, але што вы карыстаецеся склеп, PHP 650 00:32:16,220 --> 00:32:18,670 функцыя, я паказаў вам, хлопцы. 651 00:32:18,670 --> 00:32:20,060 Такім чынам, вы павінны быць добра. 652 00:32:20,060 --> 00:32:25,830 >> Акрамя таго, калі вашыя сябры дазваляюць, працаваць SQL Калі ласка, увядзіце мяне на сваіх сайтах. 653 00:32:25,830 --> 00:32:28,140 Запусціце межсайтовый скріптінга на сваіх сайтах. 654 00:32:28,140 --> 00:32:33,720 І вы ўбачыце, многія з гэтых сайтаў ёсць тона уразлівасцяў. 655 00:32:33,720 --> 00:32:40,400 Гэта неверагодна, наколькі людзі забываюць для дэзінфекцыі свае базы дадзеных або зрабіць 656 00:32:40,400 --> 00:32:46,340 упэўнены, што ўводу чалавека ня код сцэнара. 657 00:32:46,340 --> 00:32:47,200 ОК. 658 00:32:47,200 --> 00:32:49,182 Я, вядома, скончыўся вельмі рана. 659 00:32:49,182 --> 00:32:56,510 Але калі ў каго ёсць пытанні з нагоды нічога, што вы можаце здымаць мне пытанне. 660 00:32:56,510 --> 00:32:56,630 Так. 661 00:32:56,630 --> 00:32:56,970 Ідзі, ідзі. 662 00:32:56,970 --> 00:32:59,846 >> Залы: Я проста хачу спытаць, Вы можаце растлумачыць, як файл 663 00:32:59,846 --> 00:33:03,160 загрузіць роўна работ. 664 00:33:03,160 --> 00:33:03,480 >> Лучай Аранго: Так. 665 00:33:03,480 --> 00:33:06,350 Такім чынам, дазвольце мне паказаць вам файл загрузіць рэальны хуткі. 666 00:33:06,350 --> 00:33:11,300 Такім чынам, загрузка файлаў на сервер - 667 00:33:11,300 --> 00:33:14,500 праблема досціп загрузку файлаў прама цяпер, што - 668 00:33:14,500 --> 00:33:18,541 Я збіраюся адкрыць код так вы, хлопцы, см. код за кулісамі. 669 00:33:18,541 --> 00:33:22,390 670 00:33:22,390 --> 00:33:24,305 І гэта загрузіць. 671 00:33:24,305 --> 00:33:28,030 672 00:33:28,030 --> 00:33:31,560 Вось код файла карыстальніка. 673 00:33:31,560 --> 00:33:33,980 >> Мы спрабуем, каб увайсці ў гэты каталог тут. 674 00:33:33,980 --> 00:33:37,380 675 00:33:37,380 --> 00:33:44,880 І мы спрабуем, як толькі мы ўваход файл, Исеть файл - таму, калі ёсць 676 00:33:44,880 --> 00:33:50,900 падаць у файлах, гэты вобраз, то мы стараемся, каб перанесьці яго тут. 677 00:33:50,900 --> 00:33:51,910 Мы захапіць файл тут. 678 00:33:51,910 --> 00:33:58,350 Метад POST, тып, малюнкаў і файлаў. 679 00:33:58,350 --> 00:33:59,630 І мы пасылаем гэты файл. 680 00:33:59,630 --> 00:34:03,910 І тое, як толькі мы атрымаем яго, таму, як толькі файл мае вобраз, мы спрабуем, каб адправіць яго 681 00:34:03,910 --> 00:34:05,060 у гэты каталог. 682 00:34:05,060 --> 00:34:09,814 >> Праблема ў тым, што вэб-сайт не адпусціў мяне ў гэты каталог, 683 00:34:09,814 --> 00:34:12,239 таму што ён не хоча, каб я вярнуўся. 684 00:34:12,239 --> 00:34:13,489 Яна не хоча, каб я пайшоў - 685 00:34:13,489 --> 00:34:15,620 686 00:34:15,620 --> 00:34:17,070 Я павінен ісці - дык вось загрузіць. 687 00:34:17,070 --> 00:34:17,639 Вось малюнка. 688 00:34:17,639 --> 00:34:21,780 Я павінен прайсці ўвесь шлях назад у пачынаючы і паклаў яго там, а затым 689 00:34:21,780 --> 00:34:23,820 пайсці і пакласці яго ў каталог. 690 00:34:23,820 --> 00:34:30,000 Так што, калі я бег акно тэрмінала, і я хацеў перамясціць файл - 691 00:34:30,000 --> 00:34:30,409 [Неразборліва] 692 00:34:30,409 --> 00:34:32,159 бачу. 693 00:34:32,159 --> 00:34:37,940 Калі б я хацеў, каб перамясціць файл, у мяне ёсць паставіць імя файла, а затым 694 00:34:37,940 --> 00:34:40,860 Поўны шлях я хачу, каб адправіць яго. 695 00:34:40,860 --> 00:34:45,110 >> І тое сэрвэр ня даючы мне вярнуцца. 696 00:34:45,110 --> 00:34:46,929 І таму ён не дазваляючы мне дабрацца да гэтага файла. 697 00:34:46,929 --> 00:34:47,670 Але звычайна - 698 00:34:47,670 --> 00:34:49,360 так што ёсць код загрузіўшы файл. 699 00:34:49,360 --> 00:34:52,260 Так звычайна тое, што будзе адбывацца ў тым, што чалавек ня праверка, калі мой файл 700 00:34:52,260 --> 00:34:57,920 сканчаецца. JPEG, так што я хацелі б праверыць. 701 00:34:57,920 --> 00:35:00,054 Дазвольце мне адкрыць прыклад занадта рэальны хуткі. 702 00:35:00,054 --> 00:35:07,766 703 00:35:07,766 --> 00:35:08,260 >> ОК. 704 00:35:08,260 --> 00:35:09,230 Гэты чалавек мае рацыю - 705 00:35:09,230 --> 00:35:11,980 так прыклад двух правярае калі preg_match - 706 00:35:11,980 --> 00:35:14,180 вось яна тут - 707 00:35:14,180 --> 00:35:19,660 каб пераканацца, што заканчваецца PHP, і гэта добра. 708 00:35:19,660 --> 00:35:20,580 Гэта добра. 709 00:35:20,580 --> 00:35:22,820 Але ёсць сапраўдны вялікі Праблема з гэтым. 710 00:35:22,820 --> 00:35:24,600 Гэта добра. 711 00:35:24,600 --> 00:35:44,190 Але калі б я павінен быў пакласці файл з імем myfavoritepicture.php.jpeg, я мог 712 00:35:44,190 --> 00:35:50,060 па-ранейшаму патэнцыйна пазбавіцца ад JPEG і запусціць it.k Гэта РНР небяспечна. 713 00:35:50,060 --> 00:35:53,850 Вы не хочаце, каб чалавек, каб мець магчымасць запусціць код на сваім сайце. 714 00:35:53,850 --> 00:35:55,750 >> Але тады. JPEG прапускае. 715 00:35:55,750 --> 00:36:00,720 Ідэя складаецца ў тым, што вы сапраўды хочаце зрабіць не прымаць файлы, А. Але, добра, што 716 00:36:00,720 --> 00:36:07,500 Вы сапраўды хочаце зрабіць, гэта пераканацца, што вы чытаеце над усім светам. 717 00:36:07,500 --> 00:36:08,720 І няма нічога. PHP ў ім. 718 00:36:08,720 --> 00:36:10,500 Там няма. PHP ў Увесь імя файла. 719 00:36:10,500 --> 00:36:12,780 >> Залы: Але вы маглі б пакласці. JPEG на канцы. 720 00:36:12,780 --> 00:36:15,830 Серверы яшчэ запусціць код. 721 00:36:15,830 --> 00:36:16,870 >> Лучай Аранго: Не, гэта не будзе запусціць у пачатку. 722 00:36:16,870 --> 00:36:22,310 Вы павінны вярнуцца і паспрабаваць каб убачыць, калі вы можаце - 723 00:36:22,310 --> 00:36:24,210 >> АЎДЫТОРЫЯ: Такім чынам, мы павінны - 724 00:36:24,210 --> 00:36:26,020 ОК, проста яшчэ адзін набор, які ўключае ў сябе - 725 00:36:26,020 --> 00:36:26,936 >> Лучай Аранго: Так. 726 00:36:26,936 --> 00:36:29,230 >> АЎДЫТОРЫЯ: ОК. 727 00:36:29,230 --> 00:36:31,486 >> Лучай Аранго: Так. 728 00:36:31,486 --> 00:36:31,900 ОК. 729 00:36:31,900 --> 00:36:32,865 Любыя іншыя пытанні? 730 00:36:32,865 --> 00:36:33,180 ОК. 731 00:36:33,180 --> 00:36:37,350 Я збіраюся пакінуць гэта і сартаваць з паспрабаваць убачыць, калі вы, хлопцы, можаце - 732 00:36:37,350 --> 00:36:40,490 іншыя з іх крыху больш ўскладняецца тым, што яны патрабуюць значна 733 00:36:40,490 --> 00:36:44,050 больш веданне SQL, чым проста пачынаючы веданне вэб-SQL з'яўляецца і 734 00:36:44,050 --> 00:36:47,010 што JavaScript з'яўляецца. 735 00:36:47,010 --> 00:36:49,730 Але я збіраюся паспрабаваць трымаць гэта, і, спадзяюся, вы, хлопцы, даведаецеся 736 00:36:49,730 --> 00:36:53,230 пра гэта і паспрабаваць зазірнуць у што вы можаце зрабіць і колькі прыкладаў 737 00:36:53,230 --> 00:36:54,420 вы можаце атрымаць праз. 738 00:36:54,420 --> 00:36:56,020 >> Любы, ёсць любы іншы пытанні пра гэта? 739 00:36:56,020 --> 00:36:59,387 740 00:36:59,387 --> 00:37:00,350 Ідзем далей. 741 00:37:00,350 --> 00:37:01,170 Так, страляць, страляць. 742 00:37:01,170 --> 00:37:01,580 Так, ісці наперад. 743 00:37:01,580 --> 00:37:01,850 Ідзем далей. 744 00:37:01,850 --> 00:37:02,310 >> АЎДЫТОРЫЯ: ОК. 745 00:37:02,310 --> 00:37:08,870 Я чуў пра тое, як чароўныя двукоссі не дастаткова бяспечна. 746 00:37:08,870 --> 00:37:09,280 >> Лучай Аранго: Што - 747 00:37:09,280 --> 00:37:10,110 Чароўныя двукоссі? 748 00:37:10,110 --> 00:37:10,595 >> АЎДЫТОРЫЯ: Так. 749 00:37:10,595 --> 00:37:15,445 Так ён дадае - таму, калі вы ўводзіце нешта, ён заўсёды дадае двукоссі. 750 00:37:15,445 --> 00:37:15,930 >> Лучай Аранго: Так. 751 00:37:15,930 --> 00:37:16,000 Так. 752 00:37:16,000 --> 00:37:16,496 ОК. 753 00:37:16,496 --> 00:37:19,113 >> АЎДЫТОРЫЯ: І тады я, аднак, што працаваў, але тады я шукаў яго. 754 00:37:19,113 --> 00:37:21,648 І ён сказаў, што гэта не добра. 755 00:37:21,648 --> 00:37:23,050 Але я не ведаю, чаму. 756 00:37:23,050 --> 00:37:23,360 >> Лучай Аранго: Так. 757 00:37:23,360 --> 00:37:26,240 >> АЎДЫТОРЫЯ: Не выкарыстоўваць чароўныя двукоссі, таму што гэта не бяспечна. 758 00:37:26,240 --> 00:37:26,360 >> Лучай Аранго: ОК. 759 00:37:26,360 --> 00:37:31,735 Так чароўныя двукоссі, калі вы ўстаўляеце SQL а гэта ўжо дадае каштарыс для вас. 760 00:37:31,735 --> 00:37:33,520 >> АЎДЫТОРЫЯ: Гэта заўсёды дадае двукоссі вакол усё, што вы уставіў 761 00:37:33,520 --> 00:37:34,210 >> Лучай Аранго: Так. 762 00:37:34,210 --> 00:37:37,190 Такім чынам, праблема ў тым, што - 763 00:37:37,190 --> 00:37:38,445 Я зірнуць на - 764 00:37:38,445 --> 00:37:41,390 >> АЎДЫТОРЫЯ: Як гэта набыць SQL заяву? 765 00:37:41,390 --> 00:37:44,690 Ці я мяркую, што гэта можа быць як цытата выбраць. 766 00:37:44,690 --> 00:37:49,030 >> Лучай Аранго: Так, вам трэба добрых цытат для SQL. 767 00:37:49,030 --> 00:37:52,900 >> АЎДЫТОРЫЯ: Не, але сервер зробіць гэта за вас. 768 00:37:52,900 --> 00:37:54,460 >> Лучай Аранго: Гэтыя маленькія каціроўкі прама тут, гэтыя маленькія каціроўкі? 769 00:37:54,460 --> 00:37:55,670 >> АЎДЫТОРЫЯ: Так. 770 00:37:55,670 --> 00:37:56,450 >> Лучай Аранго: Так. 771 00:37:56,450 --> 00:37:59,860 Праблема ў тым, што вы можаце закомментируйте апошні - 772 00:37:59,860 --> 00:38:05,770 Добра, такім чынам, што я магу зрабіць, гэта я магу пракаментаваць з - так што давайце зірнем на - хай мне 773 00:38:05,770 --> 00:38:07,920 адкрыць файл ўводу тэксту. 774 00:38:07,920 --> 00:38:09,610 Дазвольце мне проста змяніць гэтую прама тут напрамую. 775 00:38:09,610 --> 00:38:19,510 776 00:38:19,510 --> 00:38:20,400 ОК. 777 00:38:20,400 --> 00:38:23,710 Ці можаце вы, хлопцы, бачыце, што выразна? 778 00:38:23,710 --> 00:38:29,730 Што я магу зрабіць, гэта я магу пракаментаваць з апошняга. 779 00:38:29,730 --> 00:38:32,190 Гэта закомментируйте апошнюю. 780 00:38:32,190 --> 00:38:36,760 І тады я пакладу адзін тут, пакласці тут усё злыя рэчы. 781 00:38:36,760 --> 00:38:39,840 782 00:38:39,840 --> 00:38:42,630 >> Такім чынам, карыстальнік на самай справе ўводу, праўда? 783 00:38:42,630 --> 00:38:45,230 Карыстальнік не уводзячы рэчы, праўда? 784 00:38:45,230 --> 00:38:47,430 Гэта тое, што я збіраюся ўваходу як чалавек спрабуе пракрасціся ўнутр. 785 00:38:47,430 --> 00:38:49,430 Я збіраюся паставіць у - 786 00:38:49,430 --> 00:38:59,290 787 00:38:59,290 --> 00:39:00,180 гэта адна двукоссе. 788 00:39:00,180 --> 00:39:01,760 Гэта проста хвалістыя па памылцы. 789 00:39:01,760 --> 00:39:15,080 790 00:39:15,080 --> 00:39:19,400 А потым, што код збіраецца зрабіць - 791 00:39:19,400 --> 00:39:20,190 шкада, я збіраюся ўзяць гэта. 792 00:39:20,190 --> 00:39:22,170 Што код збіраюся зрабіць, гэта ён збіраецца дадаць першы 793 00:39:22,170 --> 00:39:24,030 двукоссі тут. 794 00:39:24,030 --> 00:39:26,040 І ён збіраецца дадаць апошні двукоссі, а таксама. 795 00:39:26,040 --> 00:39:29,350 796 00:39:29,350 --> 00:39:33,270 >> І гэта таксама збіраецца дадаць Нарэшце, у мінулым двукоссі. 797 00:39:33,270 --> 00:39:37,380 Але я каментуючы гэтыя цытаты вылучае, таму яны не працуюць. 798 00:39:37,380 --> 00:39:41,440 І я сканчаю гэтую цытату пазначыць тут. 799 00:39:41,440 --> 00:39:42,290 Вы разумееце? 800 00:39:42,290 --> 00:39:43,750 Вы страцілі? 801 00:39:43,750 --> 00:39:45,880 Я магу пракаментаваць апошнюю цытату знак, і клапаціцца аб 802 00:39:45,880 --> 00:39:46,680 Першы двукоссі. 803 00:39:46,680 --> 00:39:47,350 >> АЎДЫТОРЫЯ: І гэтак жа, аздабленне першы. 804 00:39:47,350 --> 00:39:47,480 >> Лучай Аранго: Так. 805 00:39:47,480 --> 00:39:48,400 І проста скончыць першы. 806 00:39:48,400 --> 00:39:48,790 Так, гэта дакладна. 807 00:39:48,790 --> 00:39:50,800 Гэта тое, што я магу зрабіць. 808 00:39:50,800 --> 00:39:51,890 Так. 809 00:39:51,890 --> 00:39:52,980 Любыя іншыя пытанні, як, што? 810 00:39:52,980 --> 00:39:54,230 Гэта вялікае пытанне. 811 00:39:54,230 --> 00:39:56,960 812 00:39:56,960 --> 00:39:59,790 Няма, ды, можа быць. 813 00:39:59,790 --> 00:40:06,150 Будзем спадзявацца, што вы, хлопцы, будзе свайго роду робяць больш сэнсу, калі вы вывучаеце SQL і 814 00:40:06,150 --> 00:40:06,650 такія рэчы, як, што. 815 00:40:06,650 --> 00:40:07,980 Але пераканайцеся, што вы - 816 00:40:07,980 --> 00:40:10,340 трымаць гэтыя сродкі ў гадзіны. 817 00:40:10,340 --> 00:40:12,760 На жаль, гэтыя інструменты больш тут. 818 00:40:12,760 --> 00:40:14,200 Гэтыя інструменты з'яўляюцца вялікімі. 819 00:40:14,200 --> 00:40:17,190 Калі ў каго ёсць якія-небудзь пытанні, Вы таксама можаце па электроннай пошце мне. 820 00:40:17,190 --> 00:40:19,020 Гэта мой нармальны адрас электроннай пошты. 821 00:40:19,020 --> 00:40:25,015 А гэта мой працоўны адрас электроннай пошты, які калі я працую на морах. 822 00:40:25,015 --> 00:40:26,040 >> Добра, дзякуй. 823 00:40:26,040 --> 00:40:26,740 Дзякуй, хлопцы. 824 00:40:26,740 --> 00:40:27,860 Ты добра ісці. 825 00:40:27,860 --> 00:40:28,830 Вы не павінны застацца тут. 826 00:40:28,830 --> 00:40:29,570 Ня пляскаць. 827 00:40:29,570 --> 00:40:30,170 Гэта дзіўна. 828 00:40:30,170 --> 00:40:31,420 Добра, дзякуй, хлопцы. 829 00:40:31,420 --> 00:40:32,320