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