1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:10,300 >> LUCIANO ARANGO: OK, chłopaki. 3 00:00:10,300 --> 00:00:11,550 Nazywam się Luciano Arango. 4 00:00:11,550 --> 00:00:13,915 Jestem studentem drugiego roku w Adams House. 5 00:00:13,915 --> 00:00:17,550 I będziemy mówić o Bezpieczeństwo WWW aktywne obrony. 6 00:00:17,550 --> 00:00:24,220 Więc pracować dla Biura Informacji Bezpieczeństwo w morzu. 7 00:00:24,220 --> 00:00:28,670 I w lecie, I internowany w SeguraTec, co było informacji 8 00:00:28,670 --> 00:00:31,310 firma ochroniarska, który służył dla Banku Kolumbii. 9 00:00:31,310 --> 00:00:34,740 To głównie, gdy dowiedziałem się, czego się nauczyłem do tej pory. 10 00:00:34,740 --> 00:00:37,990 >> I tak, niektóre z materiałów, które jesteśmy pójdzie na dziś, nie mamy 11 00:00:37,990 --> 00:00:39,670 naprawdę mówi się w klasie. 12 00:00:39,670 --> 00:00:40,410 Ale wkrótce. 13 00:00:40,410 --> 00:00:42,360 To będzie jak SQL, JavaScript. 14 00:00:42,360 --> 00:00:44,870 A my naprawdę nie poszedł na to. 15 00:00:44,870 --> 00:00:47,730 Więc może sortować lotu przez niego, i może nie wiedzieć kilka rzeczy. 16 00:00:47,730 --> 00:00:48,890 Ale wkrótce, będziesz się uczyć. 17 00:00:48,890 --> 00:00:52,080 I będzie to wszystko ma sens. 18 00:00:52,080 --> 00:00:54,010 Także inna rzecz - 19 00:00:54,010 --> 00:00:55,780 pobyt etyczne. 20 00:00:55,780 --> 00:01:00,560 Niektóre z rzeczy, które uczą się, jesteś może korzystać w sposób nie-etycznych. 21 00:01:00,560 --> 00:01:01,950 >> Jeśli jest to twoja, na pewno spróbować. 22 00:01:01,950 --> 00:01:04,500 Zdecydowanie motywować chłopaków spróbować własnych serwerów, spróbuj 23 00:01:04,500 --> 00:01:05,519 dzieje się wewnątrz nich. 24 00:01:05,519 --> 00:01:08,500 Zobacz, czy możesz je przeniknąć, czy można dostać w nich. 25 00:01:08,500 --> 00:01:09,560 Ale nie kogokolwiek innego. 26 00:01:09,560 --> 00:01:12,390 Policjanci naprawdę nie lubią dowcipy i całości, możemy umieścić to tutaj. 27 00:01:12,390 --> 00:01:14,040 Byliśmy bawić. 28 00:01:14,040 --> 00:01:15,780 Oni się naprawdę zły. 29 00:01:15,780 --> 00:01:18,700 >> Więc udać się na tej stronie. 30 00:01:18,700 --> 00:01:23,560 Mam otworzył tutaj. 31 00:01:23,560 --> 00:01:26,780 Jest to strona, i to ma kilka przykładów. 32 00:01:26,780 --> 00:01:30,000 Co się dzieje, jest to, że pierwszy przykład jest rodzajem będzie dużo łatwiejsze 33 00:01:30,000 --> 00:01:33,470 od ostatniej przykład w sensie że pierwszy przykład 34 00:01:33,470 --> 00:01:34,970 jest całkowicie niezabezpieczone. 35 00:01:34,970 --> 00:01:40,850 I ostatnia jest jakby co normalny człowiek zrobiłby zabezpieczeń internetowych. 36 00:01:40,850 --> 00:01:42,760 Ale nadal można sortować z obejść to. 37 00:01:42,760 --> 00:01:44,860 I jedziemy do koncentrując się na jednym i dwa, raz i dwa przykłady. 38 00:01:44,860 --> 00:01:49,880 39 00:01:49,880 --> 00:01:49,920 >> OK. 40 00:01:49,920 --> 00:01:52,780 Zacznijmy cross-site scripting. 41 00:01:52,780 --> 00:01:56,100 JavaScript jest prowadzony na przeglądarka klienta. 42 00:01:56,100 --> 00:01:59,980 Jest to język programowania, który używasz do pracy w przeglądarce klienta, tak 43 00:01:59,980 --> 00:02:04,120 nie masz do aktualizacji strony internetowej i iść z powrotem do serwera. 44 00:02:04,120 --> 00:02:04,940 Masz uruchomiony. 45 00:02:04,940 --> 00:02:08,870 Na przykład Facebook, nie musisz , aby ponownie załadować stronę internetową dla nowego stanu 46 00:02:08,870 --> 00:02:09,710 aktualizacje wymyślić. 47 00:02:09,710 --> 00:02:12,170 Jest za pomocą JavaScript, aby wygenerować wszystkie te rzeczy. 48 00:02:12,170 --> 00:02:16,290 Więc możemy wstrzyknąć złośliwy JavaScript na stronach internetowych. 49 00:02:16,290 --> 00:02:20,890 I w ten sposób, kiedy wysłać link do ktoś, możemy jakby wysłać go 50 00:02:20,890 --> 00:02:23,050 niektóre z kodu, który chcemy. 51 00:02:23,050 --> 00:02:26,450 >> Jest trwały i nie trwały JavaScript - 52 00:02:26,450 --> 00:02:30,640 trwałe i nie trwałe krzyżowych skryptów, mam na myśli. 53 00:02:30,640 --> 00:02:33,760 I różnicą, że trwałe jest JavaScript, który będzie 54 00:02:33,760 --> 00:02:36,060 zapisane na stronie internetowej. 55 00:02:36,060 --> 00:02:39,780 I nie będziesz mieć JavaScript że rzeczywiście tak się stało raz. 56 00:02:39,780 --> 00:02:41,795 Więc spójrzmy na przykład bardzo szybko. 57 00:02:41,795 --> 00:02:45,660 58 00:02:45,660 --> 00:02:46,130 >> OK. 59 00:02:46,130 --> 00:02:51,620 Więc ta strona, prosta, nic się nie dzieje tutaj. 60 00:02:51,620 --> 00:02:53,070 I będziemy próbować wstawić jakiś JavaScript. 61 00:02:53,070 --> 00:02:58,110 Więc sposób zaczynamy pisanie JavaScript jest zacząć od scenariusza począwszy. 62 00:02:58,110 --> 00:03:00,570 I zamykamy ją skryptu. 63 00:03:00,570 --> 00:03:03,770 Mamy po prostu zamiar umieścić wiadomość - 64 00:03:03,770 --> 00:03:05,410 Pokażę ci - 65 00:03:05,410 --> 00:03:06,500 Alert. 66 00:03:06,500 --> 00:03:11,150 Alert jest funkcją JavaScript wykorzystuje do wyświetlania coś. 67 00:03:11,150 --> 00:03:12,400 Więc spróbujmy go bardzo szybko. 68 00:03:12,400 --> 00:03:15,600 69 00:03:15,600 --> 00:03:18,944 Idę do pracy, powiadomienie cześć. 70 00:03:18,944 --> 00:03:20,400 Cóż, zapomniałem umieścić - 71 00:03:20,400 --> 00:03:24,510 72 00:03:24,510 --> 00:03:25,460 OK. 73 00:03:25,460 --> 00:03:26,540 Więc to jest proste. 74 00:03:26,540 --> 00:03:28,730 >> Kładziemy JavaScript na stronie internetowej, i stało się. 75 00:03:28,730 --> 00:03:31,200 I to tylko dzieje się coś w rodzaju na naszej stronie, prawda? 76 00:03:31,200 --> 00:03:33,040 Tak więc wydaje się, że jak to nie jest problem, prawda? 77 00:03:33,040 --> 00:03:34,920 Chodzi mi o to, w jaki sposób można użyć to złośliwie? 78 00:03:34,920 --> 00:03:39,930 Tak droga, że ​​hakerzy nie to jest naprawdę proste. 79 00:03:39,930 --> 00:03:40,970 Zamierzają go złapać. 80 00:03:40,970 --> 00:03:43,750 Mogą wysłać ten link do Ciebie. 81 00:03:43,750 --> 00:03:46,780 Jeśli wyślę link do ciebie teraz, i otworzyć go, to będzie 82 00:03:46,780 --> 00:03:51,620 powiedzieć, cześć, mówiąc, że moja strona www mówi ci cześć. 83 00:03:51,620 --> 00:03:57,280 >> I tak, jeśli miałbym powiedzieć coś trochę mądrzejszy, jeśli podciągnąć 84 00:03:57,280 --> 00:03:59,880 W pewnym sensie funkcji JavaScript z już napisał - 85 00:03:59,880 --> 00:04:03,940 ale jeśli spojrzeć na to, pójdę nad tym, zanim napisałem to. 86 00:04:03,940 --> 00:04:06,650 Więc mamy zamiar ustawić limit czasu. 87 00:04:06,650 --> 00:04:08,450 Zamierzamy poczekać kilka sekund. 88 00:04:08,450 --> 00:04:13,970 W rzeczywistości, będziemy czekać, jeśli Się nie mylę, pięć sekund. 89 00:04:13,970 --> 00:04:15,870 To idzie w milisekundach. 90 00:04:15,870 --> 00:04:18,640 A następnie, co zamierzamy zrobić, to jesteśmy będzie ostrzegać, że logowanie 91 00:04:18,640 --> 00:04:21,459 limit czasu na ponowne zalogowanie 92 00:04:21,459 --> 00:04:23,990 I mamy zamiar zmienić lokalizację w innym miejscu. 93 00:04:23,990 --> 00:04:30,370 94 00:04:30,370 --> 00:04:32,970 >> Więc jeśli mogę wysłać tę stronę, aby ktoś, że będziemy mieć 95 00:04:32,970 --> 00:04:34,380 przeglądania wokół, spokój. 96 00:04:34,380 --> 00:04:35,650 Nic się nie dzieje. 97 00:04:35,650 --> 00:04:38,550 I w ciągu pięciu sekund, co się dzieje powiedzieć, twój login limit. 98 00:04:38,550 --> 00:04:40,200 Zaloguj widok 99 00:04:40,200 --> 00:04:43,400 Po kliknięciu OK, mam zamiar wziąć je do innej strony internetowej. 100 00:04:43,400 --> 00:04:45,980 Przypuszczalnie, strona będzie podobny do strony, która 101 00:04:45,980 --> 00:04:47,280 byli wcześniej. 102 00:04:47,280 --> 00:04:50,770 I idą do logowania ich Poświadczenia do mojej stronie zamiast 103 00:04:50,770 --> 00:04:51,850 swojej stronie internetowej. 104 00:04:51,850 --> 00:04:54,780 >> A więc mogę wysłać ludzi e-mail z tego linku. 105 00:04:54,780 --> 00:04:56,240 I powiedz, oh, oto link. 106 00:04:56,240 --> 00:04:57,290 To Bank, na przykład. 107 00:04:57,290 --> 00:05:01,390 Mówię tu, idź na ten link. 108 00:05:01,390 --> 00:05:03,730 I po ich wysłać, są będzie przegląda się. 109 00:05:03,730 --> 00:05:07,560 Mogę poczekać 15 sekund, 20 sekund i pop, które zaloguj z powrotem w 110 00:05:07,560 --> 00:05:08,840 zaloguj ponownie. 111 00:05:08,840 --> 00:05:10,120 Możecie spróbować z dużo więcej rzeczy. 112 00:05:10,120 --> 00:05:13,190 To skomplikowane, bo chłopaki nie widziałem JavaScript, więc może 113 00:05:13,190 --> 00:05:14,750 nie wiem z pewnych funkcji. 114 00:05:14,750 --> 00:05:18,625 Ale wszystko, co musisz zrobić, to początek ze skryptu, kończy się skryptu. 115 00:05:18,625 --> 00:05:22,105 116 00:05:22,105 --> 00:05:25,510 I można kłaść w środku. 117 00:05:25,510 --> 00:05:27,350 >> Alert jest funkcją, poczekaj. 118 00:05:27,350 --> 00:05:29,365 Lokalizacja okno przejście w nowym miejscu. 119 00:05:29,365 --> 00:05:31,370 Ale można zrobić jeszcze więcej. 120 00:05:31,370 --> 00:05:32,630 A więc chodzi o to, że przyjmujemy, że się. 121 00:05:32,630 --> 00:05:39,350 Jeśli pójdę do np. dwóch, a ja umieścić w tym samym kodzie, to 122 00:05:39,350 --> 00:05:40,210 nie będzie działać. 123 00:05:40,210 --> 00:05:43,620 Więc to wszystko z powodu drukowania co strona ta oryginalnie 124 00:05:43,620 --> 00:05:50,350 nie jest, jeśli mogę umieścić tu nic, będzie to wydrukować go tutaj. 125 00:05:50,350 --> 00:05:52,390 Więc to nie jest nic drukowania. 126 00:05:52,390 --> 00:05:55,560 Przykład ten jest faktycznie sprawdzania aby sprawdzić, czy skrypt ma. 127 00:05:55,560 --> 00:05:57,163 Więc tak, proszę bardzo. 128 00:05:57,163 --> 00:05:57,606 Zapytaj mnie. 129 00:05:57,606 --> 00:05:59,560 >> PUBLICZNOŚCI: nie wysyła GET lub POST wniosek? 130 00:05:59,560 --> 00:06:00,670 >> LUCIANO ARANGO: Tak. oni wysyłając żądanie GET. 131 00:06:00,670 --> 00:06:01,350 >> PUBLICZNOŚCI: Jest? 132 00:06:01,350 --> 00:06:02,490 >> LUCIANO ARANGO: Tak. 133 00:06:02,490 --> 00:06:04,030 Również przeglądarki używają żądania POST. 134 00:06:04,030 --> 00:06:07,470 Ale staram się pokazać żądań GET tak, że możemy zobaczyć, co jest 135 00:06:07,470 --> 00:06:10,760 faktycznie dzieje. 136 00:06:10,760 --> 00:06:12,880 I tak, jeśli spojrzymy na ten kod - tak to nie działa już. 137 00:06:12,880 --> 00:06:24,870 A jeśli spojrzeć na ten kod, to będzie w przykładzie drugim. 138 00:06:24,870 --> 00:06:29,300 Co ta osoba robi, osoba za tej przeglądarki - 139 00:06:29,300 --> 00:06:35,370 otworzyć, OK - 140 00:06:35,370 --> 00:06:39,290 Skrypt jest zastąpienie słowa. 141 00:06:39,290 --> 00:06:42,850 To jest PHP, które chłopaki mogą widziałem trochę jeszcze. 142 00:06:42,850 --> 00:06:46,250 >> On jest po prostu zastąpienie Skrypt słowo z nazwy. 143 00:06:46,250 --> 00:06:50,895 Tak jednak, jeśli pójdę do przodu i po prostu umieścić w - 144 00:06:50,895 --> 00:06:58,520 145 00:06:58,520 --> 00:07:02,360 jeśli ponownie chwycić mój kod, i zamierzam modyfikować go tylko trochę. 146 00:07:02,360 --> 00:07:15,010 Zamiast skryptu, mam zamiar zmienić to dla skryptu z R. i kapitału 147 00:07:15,010 --> 00:07:16,390 mamy zamiar sprawdzić, czy ten kod działa. 148 00:07:16,390 --> 00:07:19,090 Więc nie wydrukować, co jest dobrym znakiem. 149 00:07:19,090 --> 00:07:21,990 I miejmy nadzieję, że w kolejnych dwóch sekund, to będzie pop-up. 150 00:07:21,990 --> 00:07:22,820 >> Twój login limit. 151 00:07:22,820 --> 00:07:23,210 OK. 152 00:07:23,210 --> 00:07:24,460 W porządku. 153 00:07:24,460 --> 00:07:27,670 Więc może sprawdzenie skryptu nie muszą pracować. 154 00:07:27,670 --> 00:07:28,130 Osoba - 155 00:07:28,130 --> 00:07:32,290 może też sprawdzić skrypt wielkimi literami, skrypt małe, sprawa str 156 00:07:32,290 --> 00:07:34,180 porównanie, upewnij się, że są takie same. 157 00:07:34,180 --> 00:07:38,480 Ale haker może jeszcze zrobić coś w rodzaju tego, co my w Vigenère kiedy przenieśliśmy 158 00:07:38,480 --> 00:07:40,620 powrotem kilka znaków, iść do przodu. 159 00:07:40,620 --> 00:07:43,470 I to może dowiedzieć się, jak umieścić skrypt z powrotem tam, więc to może wstrzyknąć 160 00:07:43,470 --> 00:07:44,460 że skrypt. 161 00:07:44,460 --> 00:07:50,370 >> Więc co chcesz używać jest htmlspecialchars do 162 00:07:50,370 --> 00:07:51,330 ochrony swojej stronie. 163 00:07:51,330 --> 00:07:56,490 I co to robi to robi upewnić się, że to, co można umieścić w - 164 00:07:56,490 --> 00:07:59,610 na przykład, czy to notowania większa lub mniejsza niż - 165 00:07:59,610 --> 00:08:04,701 otrzymuje się z czymś nie będzie - 166 00:08:04,701 --> 00:08:05,951 pozwól mi przybliżyć tutaj - 167 00:08:05,951 --> 00:08:08,730 168 00:08:08,730 --> 00:08:09,685 Rzeczywisty Ampersand. 169 00:08:09,685 --> 00:08:13,420 Zastąpi on tych specjalnych HTML znaków, które zobaczymy, gdy jesteśmy 170 00:08:13,420 --> 00:08:14,670 mówisz - 171 00:08:14,670 --> 00:08:18,635 172 00:08:18,635 --> 00:08:20,740 och, to zajmie mi powrót do - 173 00:08:20,740 --> 00:08:24,220 174 00:08:24,220 --> 00:08:25,380 znaki te tutaj. 175 00:08:25,380 --> 00:08:28,180 >> To oznacza, że ​​coś nadchodzi. 176 00:08:28,180 --> 00:08:31,570 Dla HTML, że od wspornika mówi nam, że coś 177 00:08:31,570 --> 00:08:33,299 HTML związane nadchodzi. 178 00:08:33,299 --> 00:08:33,980 I chcemy, aby pozbyć się tego. 179 00:08:33,980 --> 00:08:36,200 Nie chcemy, aby umieścić w HTML website.k Nie chcemy, aby użytkownik 180 00:08:36,200 --> 00:08:40,260 w stanie umieścić coś w ich stronę które mogą mieć wpływ na ich stronie internetowej, jak 181 00:08:40,260 --> 00:08:43,480 Skrypt lub HTML lub coś w tym stylu. 182 00:08:43,480 --> 00:08:53,090 Ważne jest to, że ci zdezynfekować wejście użytkownika. 183 00:08:53,090 --> 00:08:54,720 >> Więc użytkownicy mogą wejść wiele rzeczy. 184 00:08:54,720 --> 00:08:58,110 On może wprowadzić kilka rzeczy, aby spróbować oszukać przeglądarkę do jeszcze 185 00:08:58,110 --> 00:08:59,410 działa ten kod skryptu. 186 00:08:59,410 --> 00:09:02,870 Co chcesz zrobić, to nie tylko patrzeć dla scenariusza, ale spójrz na wszystko 187 00:09:02,870 --> 00:09:04,250 które mogą być szkodliwe. 188 00:09:04,250 --> 00:09:06,800 I htmlspecialchars zrobię dla Ciebie, więc nie musisz 189 00:09:06,800 --> 00:09:07,340 się o to martwić. 190 00:09:07,340 --> 00:09:12,280 Ale nie próbuj zrobić samemu jakby z własnego kodu. 191 00:09:12,280 --> 00:09:14,055 Czy wszyscy jasno XSS? 192 00:09:14,055 --> 00:09:14,370 >> OK. 193 00:09:14,370 --> 00:09:16,355 Chodźmy do SQL injection. 194 00:09:16,355 --> 00:09:21,010 Więc SQL injection jest prawdopodobnie Usterka numer jeden 195 00:09:21,010 --> 00:09:22,490 w różnych stronach internetowych. 196 00:09:22,490 --> 00:09:24,350 To znaczy, dobry przykład - 197 00:09:24,350 --> 00:09:27,350 Właśnie badania najdalej dla tej rzeczy. 198 00:09:27,350 --> 00:09:34,430 I znalazłem ten wspaniały artykuł, w którym Widziałem, że został naruszony Harvardu, 199 00:09:34,430 --> 00:09:35,390 włamał. 200 00:09:35,390 --> 00:09:37,370 I zastanawiałem się, cóż, jak oni to robią? 201 00:09:37,370 --> 00:09:41,660 Harvard jest najbardziej niesamowite, najbardziej bezpieczne uniwersytet kiedykolwiek. 202 00:09:41,660 --> 00:09:43,850 Prawda? 203 00:09:43,850 --> 00:09:45,410 Cóż, do naruszenia serwerów, hakerzy używane 204 00:09:45,410 --> 00:09:47,710 technika zwana SQL injection. 205 00:09:47,710 --> 00:09:50,250 >> Tak to się dzieje na codzień. 206 00:09:50,250 --> 00:09:53,590 Ludzie zapominają, aby uwzględnić dla SQL injection. 207 00:09:53,590 --> 00:09:54,930 Harvard ma. 208 00:09:54,930 --> 00:10:00,050 Myślę, że tu jest napisane, Princeton, Stanford, Cornell. 209 00:10:00,050 --> 00:10:03,550 Jak więc - więc co to jest SQL wtryskową połączenie wszystkich tych 210 00:10:03,550 --> 00:10:05,668 ludzie w dół? 211 00:10:05,668 --> 00:10:08,010 OK. 212 00:10:08,010 --> 00:10:12,090 Więc SQL jest językiem programowania, który używamy, aby uzyskać dostęp do baz danych. 213 00:10:12,090 --> 00:10:14,560 Co możemy zrobić, to możemy wybrać - 214 00:10:14,560 --> 00:10:18,510 więc co to czyta teraz to wybrać wszystko ze stołu. 215 00:10:18,510 --> 00:10:22,640 >> SQL, zmienia w tych bazach danych które mają stoły pełne informacji. 216 00:10:22,640 --> 00:10:26,550 Więc wybrać wszystko od użytkowników gdzie nazwa to nazwa użytkownika. 217 00:10:26,550 --> 00:10:28,120 Prawda? 218 00:10:28,120 --> 00:10:30,770 Dość proste. 219 00:10:30,770 --> 00:10:34,490 Idea iniekcji SQL to, że wstawić jakiś złośliwy kod, który 220 00:10:34,490 --> 00:10:37,270 oszukać serwer do uruchomienia coś inny niż to, co 221 00:10:37,270 --> 00:10:38,430 pierwotnie został uruchomiony. 222 00:10:38,430 --> 00:10:44,970 Więc powiedzmy, że dla użytkownika, kładziemy się lub 1 wynosi 1. 223 00:10:44,970 --> 00:10:46,700 Więc umieścić w lub 1 wynosi 1. 224 00:10:46,700 --> 00:10:49,890 Sposób odczytuje teraz będzie wybrać od użytkowników, wszystko z 225 00:10:49,890 --> 00:10:51,360 użytkowników - to wszystko - 226 00:10:51,360 --> 00:10:55,880 gdzie nazwa to nazwa użytkownika, ale nazwa użytkownika jest równa 1 lub 1. 227 00:10:55,880 --> 00:11:01,760 >> Więc nazwa jest niczym lub 1 wynosi 1. 228 00:11:01,760 --> 00:11:04,060 1 jest równa 1 jest zawsze prawdziwe. 229 00:11:04,060 --> 00:11:07,690 Więc będzie to zawsze zwraca informacje ze strony użytkowników. 230 00:11:07,690 --> 00:11:08,100 OK. 231 00:11:08,100 --> 00:11:10,030 Nie trzeba mieć poprawna nazwa użytkownika. 232 00:11:10,030 --> 00:11:14,240 Możemy po prostu wszystko, co chcemy, i powróci informacji 233 00:11:14,240 --> 00:11:15,690 że musimy. 234 00:11:15,690 --> 00:11:17,160 Spójrzmy na inny przykład. 235 00:11:17,160 --> 00:11:22,720 >> Jeśli mamy wybierać wszystko od użytkownika, gdzie nazwa jest DROP TABLE users - 236 00:11:22,720 --> 00:11:26,420 tak, jak myślisz to wola zrobić, jeśli mogę umieścić nazwę użytkownika 237 00:11:26,420 --> 00:11:29,560 jako użytkownicy DROP TABLE? 238 00:11:29,560 --> 00:11:30,230 Ktoś ma pomysł? 239 00:11:30,230 --> 00:11:31,050 Tak. 240 00:11:31,050 --> 00:11:32,470 >> PUBLICZNOŚCI: To powie to zrzucić wszystkie tabele. 241 00:11:32,470 --> 00:11:35,460 >> LUCIANO ARANGO: To się nam powiedzieć, zrzucić wszystko na stronie internetowej, 242 00:11:35,460 --> 00:11:38,290 wszystko w bazie danych. 243 00:11:38,290 --> 00:11:41,910 I co to za ludzie używać - tak Mam zamiar pokazać wam. 244 00:11:41,910 --> 00:11:45,462 I wyłączona upuszczając tabele bo nie chcę cię 245 00:11:45,462 --> 00:11:48,240 Chłopaki spadać moje tabele. 246 00:11:48,240 --> 00:11:49,850 Rzućmy okiem na to. 247 00:11:49,850 --> 00:11:54,410 Więc to po prostu ciągnie się informacje dla niektórych osób. 248 00:11:54,410 --> 00:11:57,550 Więc skąd mamy wiedzieć, czy jest to wpływ SQL injection. 249 00:11:57,550 --> 00:12:01,545 Zamierzamy sprawdzić bardzo szybko czy możemy umieścić coś - 250 00:12:01,545 --> 00:12:04,990 251 00:12:04,990 --> 00:12:06,080 chciałbym skopiować ten kod. 252 00:12:06,080 --> 00:12:08,140 Mam zamiar iść na nią chwilę. 253 00:12:08,140 --> 00:12:12,210 Mam zamiar umieścić korzeń i 1 wynosi 1. 254 00:12:12,210 --> 00:12:15,510 >> To właśnie tutaj, w tym znak procent 23 - 255 00:12:15,510 --> 00:12:19,970 co to naprawdę jest, jeśli spójrz tutaj w - 256 00:12:19,970 --> 00:12:23,820 HTML odbywa się w sposób liczb, jeśli przyjrzeć się, kiedy kładę się w przestrzeni 257 00:12:23,820 --> 00:12:28,380 tutaj - gdybym coś kosmicznego o, zmienia się na wartość procentową 2. 258 00:12:28,380 --> 00:12:31,420 Czy faceci zobaczyć tutaj kiedy mogę umieścić w przestrzeni? 259 00:12:31,420 --> 00:12:36,710 Zasada jest, że tylko możesz wysłać wartości ASCII przez HTML. 260 00:12:36,710 --> 00:12:40,330 Tak więc zastępuje na przykład Przestrzeń z procentami 20. 261 00:12:40,330 --> 00:12:41,970 Nie wiem, czy wy widziałem, że przed. 262 00:12:41,970 --> 00:12:45,100 >> Zastępuje hashtag z procentami 23. 263 00:12:45,100 --> 00:12:50,840 Potrzebujemy hashtag na końcu lub Ochrona tak, że możemy powiedzieć, 264 00:12:50,840 --> 00:13:00,885 baza zapomnieć na komentarz Ten ostatni średnik na końcu. 265 00:13:00,885 --> 00:13:03,060 Chcemy, aby nie myśleć o tym. 266 00:13:03,060 --> 00:13:05,980 My po prostu chcemy go uruchomić wszystko że mamy wcześniej i 267 00:13:05,980 --> 00:13:07,450 komentarz, że się. 268 00:13:07,450 --> 00:13:08,710 Rzućmy okiem na to. 269 00:13:08,710 --> 00:13:14,670 >> Więc jeśli miałbym postawić coś złego - Powiedzmy, na przykład, umieścić 2 równa 270 00:13:14,670 --> 00:13:15,690 1, nie daje mi nic. 271 00:13:15,690 --> 00:13:22,930 Kiedy kładę się 1 wynosi 1, i to nie coś wrócić, to mówi mi, że 272 00:13:22,930 --> 00:13:24,660 jest podatny na SQL injection. 273 00:13:24,660 --> 00:13:29,090 Teraz wiem, że cokolwiek Umieścić po to - 274 00:13:29,090 --> 00:13:39,110 i na przykład, usunięcie tabel czy coś takiego 275 00:13:39,110 --> 00:13:41,190 na pewno działa. 276 00:13:41,190 --> 00:13:44,350 Wiem, że jest podatna na SQL injection bo wiem, że 277 00:13:44,350 --> 00:13:49,850 pod maską, to pozwolić mi zrobić 1 równa się 1 rzecz. 278 00:13:49,850 --> 00:13:51,100 OK? 279 00:13:51,100 --> 00:13:53,950 280 00:13:53,950 --> 00:13:56,540 >> A jeśli spojrzymy na tych pozostałych, numer dwa i numer trzy, to 281 00:13:56,540 --> 00:13:59,110 zamiar zrobić trochę więcej sprawdzenia pod 282 00:13:59,110 --> 00:14:03,680 Kaptur, co to jest. 283 00:14:03,680 --> 00:14:07,425 Więc ktoś umożliwić spadek coś jeszcze czy próbowałeś? 284 00:14:07,425 --> 00:14:08,760 Czy faceci jakby dostać jeszcze SQL? 285 00:14:08,760 --> 00:14:10,430 Bo wiem, że faceci nie mają widziałem go jeszcze, więc jest to swego rodzaju 286 00:14:10,430 --> 00:14:11,759 mylące dla was. 287 00:14:11,759 --> 00:14:16,160 288 00:14:16,160 --> 00:14:18,480 Rzućmy okiem. 289 00:14:18,480 --> 00:14:21,270 Więc co jest sposobem na zapobieganie SQLI? 290 00:14:21,270 --> 00:14:21,390 OK. 291 00:14:21,390 --> 00:14:23,330 Więc to jest bardzo ważne, ponieważ Chłopaki na pewno chcesz, aby zapobiec 292 00:14:23,330 --> 00:14:24,090 to na stronach internetowych. 293 00:14:24,090 --> 00:14:28,040 >> Jeśli nie, wszyscy twoi przyjaciele będą śmieją się z was, gdy spadnie wszystko 294 00:14:28,040 --> 00:14:29,390 tabele. 295 00:14:29,390 --> 00:14:36,150 Więc chodzi o to, że można naprawić SQL w określony sposób, natomiast dopasować 296 00:14:36,150 --> 00:14:41,940 co z wejścia użytkownika pewien ciąg. 297 00:14:41,940 --> 00:14:46,120 Więc sposób to działa jest to, przygotowanie bazy danych. 298 00:14:46,120 --> 00:14:50,830 Wybrać nazwę, kolor i kalorii z bazy danych o nazwie owoców. 299 00:14:50,830 --> 00:14:53,580 A potem, gdy kalorii jest mniejsza, i umieścić tam znak zapytania 300 00:14:53,580 --> 00:14:56,530 mówiąc, mamy zamiar wejścia coś w drugim. 301 00:14:56,530 --> 00:14:58,850 >> I kolor jest równy, i stawiamy pytanie znak mówiąc będziemy 302 00:14:58,850 --> 00:15:00,913 Wejście coś w drugim, jak również. 303 00:15:00,913 --> 00:15:02,660 OK? 304 00:15:02,660 --> 00:15:09,920 A następnie wykonujemy go, kładąc w 150 i czerwony. 305 00:15:09,920 --> 00:15:12,820 I będzie to sprawdzić, upewnić się, że te dwa - 306 00:15:12,820 --> 00:15:15,300 ta tablica będzie sprawdzić, że są dwa są liczbą całkowitą i 307 00:15:15,300 --> 00:15:16,550 że jest to ciąg znaków. 308 00:15:16,550 --> 00:15:18,810 309 00:15:18,810 --> 00:15:20,890 Potem idziemy, i pobrać wszystko, kładziemy go na czerwono. 310 00:15:20,890 --> 00:15:21,964 Oznacza to, że możemy sprowadzić wszystko. 311 00:15:21,964 --> 00:15:26,790 Oznacza to, że w rzeczywistości wykonać SQL Ochrona i umieścić go z powrotem w kolorze czerwonym. 312 00:15:26,790 --> 00:15:30,530 Tutaj robimy to samo, ale zrobić to samo na żółty. 313 00:15:30,530 --> 00:15:32,490 I pobieramy wszystko. 314 00:15:32,490 --> 00:15:36,140 >> I w ten sposób, uniemożliwić użytkownikowi z możliwości wejścia do czegoś 315 00:15:36,140 --> 00:15:41,710 że nie jest to, co podano, łańcuch lub liczbę całkowitą, na przykład. 316 00:15:41,710 --> 00:15:45,100 317 00:15:45,100 --> 00:15:46,610 Mówiłem wcześniej o opierając się na innych. 318 00:15:46,610 --> 00:15:50,010 Kiedy wy rozpocząć projekt, jesteś Najbardziej na pewno będzie korzystać 319 00:15:50,010 --> 00:15:52,310 bootstrap lub coś podobnego. 320 00:15:52,310 --> 00:15:53,490 Czy wy kiedykolwiek Wordpress? 321 00:15:53,490 --> 00:15:57,170 Pewnie chłopaki używali Wordpress najprawdopodobniej. 322 00:15:57,170 --> 00:16:00,050 Tak więc problem z użyciem sprawy innych ludzi - 323 00:16:00,050 --> 00:16:05,940 Idę do Google bardzo szybko Wordpress luka. 324 00:16:05,940 --> 00:16:07,495 >> Jeśli ciągnąć to właśnie teraz - 325 00:16:07,495 --> 00:16:08,995 I dosłownie zrobił dwie sekundy Google. 326 00:16:08,995 --> 00:16:12,300 327 00:16:12,300 --> 00:16:13,800 Widzimy, że Wordpress - 328 00:16:13,800 --> 00:16:17,450 to jest datowane we wrześniu '12. 329 00:16:17,450 --> 00:16:19,120 26 jest aktualizowana. 330 00:16:19,120 --> 00:16:23,620 Domyślna konfiguracja Wordpress przed 3.6 nie wyklucza to 331 00:16:23,620 --> 00:16:27,110 niektóre dodane, które mogą ułatwić 332 00:16:27,110 --> 00:16:29,790 krzyż-site scripting. 333 00:16:29,790 --> 00:16:34,530 Tak szybkie historia, kiedyś pracowaliśmy z - tak, byłem, w lecie pracy 334 00:16:34,530 --> 00:16:34,970 staż. 335 00:16:34,970 --> 00:16:40,400 I pracowaliśmy z rodzaju jak firmy duże karty kredytowej. 336 00:16:40,400 --> 00:16:42,020 >> I opierają się one na coś o nazwie - 337 00:16:42,020 --> 00:16:45,740 Nie wiem, czy wy kiedykolwiek grał z produktu o nazwie Joomla. 338 00:16:45,740 --> 00:16:51,750 IBP produkt, który jest używany do kontrola - rodzaj podobny do 339 00:16:51,750 --> 00:16:54,340 Wordpress, wykorzystywane do budowania stron internetowych. 340 00:16:54,340 --> 00:16:56,060 Więc mieli ich stronę internetową działa na Joomla. 341 00:16:56,060 --> 00:16:59,290 Właściwie jest to karta kredytowa Firma w Kolumbii. 342 00:16:59,290 --> 00:17:01,000 Zabiorę cię do ich strona bardzo szybko. 343 00:17:01,000 --> 00:17:04,550 344 00:17:04,550 --> 00:17:05,400 >> Tak kiedyś Joomla. 345 00:17:05,400 --> 00:17:08,630 I oni nie zaktualizowane Joomla do najnowszego dodatku. 346 00:17:08,630 --> 00:17:12,160 I tak, gdy byliśmy przyjrzeniu ich kod, byliśmy w stanie właściwie 347 00:17:12,160 --> 00:17:18,430 iść w ich kodzie i ukraść wszystko informacje o karcie kredytowej, które mieli, 348 00:17:18,430 --> 00:17:21,670 wszystkie numery kart kredytowych, nazwiska, adresy. 349 00:17:21,670 --> 00:17:22,740 I to właśnie - 350 00:17:22,740 --> 00:17:23,569 i ich kod był idealnie w porządku. 351 00:17:23,569 --> 00:17:24,710 Mieli świetny kod. 352 00:17:24,710 --> 00:17:25,389 To wszystko było bezpieczeństwo. 353 00:17:25,389 --> 00:17:26,520 Sprawdzili wszystkie bazy danych. 354 00:17:26,520 --> 00:17:29,020 Sprawili, że cross-site skryptów było w porządku. 355 00:17:29,020 --> 00:17:34,390 >> Ale kiedyś coś, co nie było zaktualizowane, to nie jest bezpieczny. 356 00:17:34,390 --> 00:17:36,940 I tak, że doprowadził ich do - tak wy na pewno będzie wykorzystywać inne 357 00:17:36,940 --> 00:17:40,650 Kod, szkielety ludzi innych ludzi do budowania swojej stronie internetowej. 358 00:17:40,650 --> 00:17:43,860 Upewnij się, że są bezpieczne, ponieważ czasami to nie ty, który 359 00:17:43,860 --> 00:17:44,480 popełni błąd. 360 00:17:44,480 --> 00:17:47,440 Ale ktoś inny popełni błąd, a potem spaść z tego powodu. 361 00:17:47,440 --> 00:17:51,190 362 00:17:51,190 --> 00:17:53,885 >> Hasła i PII. 363 00:17:53,885 --> 00:17:56,820 Więc hasła. 364 00:17:56,820 --> 00:17:58,070 OK. 365 00:17:58,070 --> 00:17:59,980 366 00:17:59,980 --> 00:18:04,230 Rzućmy okiem na hasłach bardzo szybko. 367 00:18:04,230 --> 00:18:04,590 OK. 368 00:18:04,590 --> 00:18:06,520 Proszę mi powiedzieć, że każdy wykorzystuje bezpieczne - 369 00:18:06,520 --> 00:18:09,030 Mam nadzieję, że wszyscy tutaj używa bezpiecznych haseł. 370 00:18:09,030 --> 00:18:12,890 Jestem po prostu pozwolić, że w jako założenie. 371 00:18:12,890 --> 00:18:14,850 Więc chłopaki są na pewno będzie przechowywania haseł na stronach internetowych. 372 00:18:14,850 --> 00:18:17,440 Masz zamiar zrobić coś takiego Zaloguj się lub coś w tym stylu. 373 00:18:17,440 --> 00:18:19,610 Ważne jest, aby nie przechowywać hasła w postaci zwykłego tekstu. 374 00:18:19,610 --> 00:18:20,860 Jest to niezwykle ważne. 375 00:18:20,860 --> 00:18:23,960 Nie chcesz, aby zapisać hasła w postaci zwykłego tekstu. 376 00:18:23,960 --> 00:18:27,370 >> I na pewno nie chcę przechowywać je w jeden sposób mieszania. 377 00:18:27,370 --> 00:18:32,440 Więc co się szyfrem, że kiedy wygenerować słowo, gdy mu to 378 00:18:32,440 --> 00:18:36,200 Słowo do funkcji skrótu, to będzie wygenerować z powrotem jakieś tajemnicze 379 00:18:36,200 --> 00:18:39,390 Wiadomość lub tajemnicze zestaw kluczy. 380 00:18:39,390 --> 00:18:40,640 Pokażę wam przykład. 381 00:18:40,640 --> 00:18:44,620 382 00:18:44,620 --> 00:18:50,250 Idę do mieszania, one word hasło1. 383 00:18:50,250 --> 00:18:55,280 Więc MD5 będzie mi wrócić jakieś dziwne informacje. 384 00:18:55,280 --> 00:18:59,140 >> Problemem jest to, że ludzie tam że chciałbyś pójść do stron internetowych mają 385 00:18:59,140 --> 00:19:02,750 już zorientowali się, sortowania wszystkich skrótów MD5. 386 00:19:02,750 --> 00:19:06,030 Co zrobili jest usiedli na swoich komputery i ich mieszany każdy 387 00:19:06,030 --> 00:19:09,660 Pojedynczy możliwe tam, aż słowo dostali jakby co to jest. 388 00:19:09,660 --> 00:19:11,420 Gdybym miał szukać tego w górę - 389 00:19:11,420 --> 00:19:12,420 Właśnie złapał ten skrót. 390 00:19:12,420 --> 00:19:14,120 Jeśli dostanę ten skrót od - 391 00:19:14,120 --> 00:19:17,470 jeśli pójdę na stronie internetowej, i uważam, tego skrótu, bo dostać się do 392 00:19:17,470 --> 00:19:24,100 baz danych i mogę to sprawdzić, ktoś już zorientowaliśmy się dla mnie. 393 00:19:24,100 --> 00:19:28,600 394 00:19:28,600 --> 00:19:29,100 >> Tak. 395 00:19:29,100 --> 00:19:35,030 Więc ludzie usiedli, i cokolwiek md5 hash, które można umieścić w, że będziemy 396 00:19:35,030 --> 00:19:37,760 powrót do ciebie coś to jest słowo. 397 00:19:37,760 --> 00:19:39,800 Jeśli hash inne słowo, jak - 398 00:19:39,800 --> 00:19:42,410 Nie wiem - 399 00:19:42,410 --> 00:19:43,490 trees2. 400 00:19:43,490 --> 00:19:46,050 Nie chcę być zawiedziony według moich wyszukiwań Google. 401 00:19:46,050 --> 00:19:49,820 402 00:19:49,820 --> 00:19:52,780 Nie jest to, trees2. 403 00:19:52,780 --> 00:19:55,930 Tak wiele stron internetowych nadal używać skrótu MD5. 404 00:19:55,930 --> 00:19:57,730 Mówią, och, to jest bezpieczne. 405 00:19:57,730 --> 00:19:58,570 Nie jesteśmy przechowywania w postaci zwykłego tekstu. 406 00:19:58,570 --> 00:19:59,740 Mamy tego skrótu MD5. 407 00:19:59,740 --> 00:20:01,880 I wszystko, co musisz zrobić, to po prostu Google numer. 408 00:20:01,880 --> 00:20:03,940 >> I nawet nie trzeba obliczyć samodzielnie. 409 00:20:03,940 --> 00:20:06,790 Mogę tylko google, a ktoś już nie dla mnie. 410 00:20:06,790 --> 00:20:08,010 Oto kilka z nich. 411 00:20:08,010 --> 00:20:09,260 Oto kilka haseł. 412 00:20:09,260 --> 00:20:13,890 413 00:20:13,890 --> 00:20:18,680 Więc na pewno nie używać skrótu MD5, bo wszystko co musisz 414 00:20:18,680 --> 00:20:19,140 Google nie jest to. 415 00:20:19,140 --> 00:20:20,390 Więc co chcesz użyć zamiast tego? 416 00:20:20,390 --> 00:20:29,340 417 00:20:29,340 --> 00:20:30,170 OK. 418 00:20:30,170 --> 00:20:31,260 Coś, co nazywa solenie. 419 00:20:31,260 --> 00:20:32,460 Więc co solenie jest - 420 00:20:32,460 --> 00:20:36,280 czy faceci pamiętam, kiedy byliśmy mówisz losowo - 421 00:20:36,280 --> 00:20:37,920 Nie jestem pewien, co pset było - 422 00:20:37,920 --> 00:20:41,140 został pset tam lub cztery? 423 00:20:41,140 --> 00:20:45,150 >> Rozmawialiśmy o znalezieniu Igła w stogu siana. 424 00:20:45,150 --> 00:20:48,480 A w pset, to powiedział, że można rzeczywiście dowiedzieć się, co losowej 425 00:20:48,480 --> 00:20:51,840 generuje, bo ktoś już dostał losowe milion razy i tylko 426 00:20:51,840 --> 00:20:53,230 rodzaj utworzony co generuje. 427 00:20:53,230 --> 00:20:55,840 Co chcesz zrobić, to umieścić w wejściu. 428 00:20:55,840 --> 00:20:57,130 Więc to, co jest swego rodzaju solenia. 429 00:20:57,130 --> 00:21:00,900 Oni już zorientowali się, co solenie zwraca dla każdej pracy. 430 00:21:00,900 --> 00:21:04,750 >> Więc to, co robi jest solenie można umieścić w soli. 431 00:21:04,750 --> 00:21:06,160 Można umieścić w pewnym słowem. 432 00:21:06,160 --> 00:21:09,720 I będzie to słowo w zależności skrótu na to, co można umieścić w tutaj. 433 00:21:09,720 --> 00:21:13,570 Więc jeśli hash jednego z tym hasłem zdanie, to będzie do mieszania 434 00:21:13,570 --> 00:21:17,180 inaczej, jeśli hash hasło1 w innym zdaniu. 435 00:21:17,180 --> 00:21:21,670 To rodzaj daje to gdzieś początku do mieszania, aby rozpocząć. 436 00:21:21,670 --> 00:21:25,970 Więc jest to o wiele trudniejsze do obliczenia, ale można jeszcze obliczyć go, zwłaszcza 437 00:21:25,970 --> 00:21:26,830 jeśli używasz zły sól. 438 00:21:26,830 --> 00:21:29,650 >> Ludzie zorientowali się już także wspólne sole i zorientowali się, 439 00:21:29,650 --> 00:21:31,500 co to jest. 440 00:21:31,500 --> 00:21:34,980 Losowe sole są o wiele lepsze, ale najlepszym sposobem jest użycie 441 00:21:34,980 --> 00:21:38,160 coś, co nazywa krypta. 442 00:21:38,160 --> 00:21:40,480 I co pozwala na krypta nie - tak te funkcje są 443 00:21:40,480 --> 00:21:41,820 już zbudowany dla Ciebie. 444 00:21:41,820 --> 00:21:44,910 Wielu ludzi zapomina, że ​​albo zapominają go używać. 445 00:21:44,910 --> 00:21:54,520 Ale jeśli spojrzeć krypta krypta PHP, już zwraca ciąg mieszania dla mnie. 446 00:21:54,520 --> 00:21:58,790 I faktycznie soli, która wiele razy Sumy i to wiele razy. 447 00:21:58,790 --> 00:22:00,070 >> Tak więc nie musimy tego robić. 448 00:22:00,070 --> 00:22:04,790 Więc wszystko co musisz zrobić, to wysłać go do krypty. 449 00:22:04,790 --> 00:22:08,170 I stworzy wielki skrót bez jesteś martwiąc się o soli 450 00:22:08,170 --> 00:22:08,990 czy coś. 451 00:22:08,990 --> 00:22:12,000 Bo jeśli były do ​​soli to, masz aby pamiętać, co słonych użyłeś 452 00:22:12,000 --> 00:22:13,800 bo jeśli nie, to nie można dostać swoje powrotem bez hasła 453 00:22:13,800 --> 00:22:15,760 soli, które używane. 454 00:22:15,760 --> 00:22:17,010 OK. 455 00:22:17,010 --> 00:22:21,120 456 00:22:21,120 --> 00:22:23,150 >> A także osobistego zidentyfikowania informacje. 457 00:22:23,150 --> 00:22:26,730 Bezpieczeństwa, tak społeczne, karta kredytowa - to jest dość oczywiste. 458 00:22:26,730 --> 00:22:31,880 Ale czasami ludzie zapominają, sposób, w jaki Prace jest, jak wiele informacji czy 459 00:22:31,880 --> 00:22:35,690 rzeczywiście trzeba znaleźć jedną osobę? 460 00:22:35,690 --> 00:22:37,740 Ktoś zrobił badania na temat ten sposób z powrotem. 461 00:22:37,740 --> 00:22:40,870 I to było jak, jeśli masz pełna nazwa, nie można znaleźć 462 00:22:40,870 --> 00:22:41,610 ktoś tak łatwo. 463 00:22:41,610 --> 00:22:43,900 Ale co, jeśli masz pełną nazwę a ich data urodzenia? 464 00:22:43,900 --> 00:22:47,770 Czy to wystarczy, aby zidentyfikować ktoś konkretnie? 465 00:22:47,770 --> 00:22:52,760 >> Co zrobić, jeśli masz swoje imię i nazwisko oraz ulica, że ​​żyją na? 466 00:22:52,760 --> 00:22:55,110 Czy to wystarczy, aby znaleźć kogoś? 467 00:22:55,110 --> 00:23:02,490 I to jest, gdy pytanie, co to jest identyfikowalne informacje osobiste, a 468 00:23:02,490 --> 00:23:05,360 co należy martwić się o nie rozdaje? 469 00:23:05,360 --> 00:23:08,770 Jeśli oddać prywatnego zidentyfikowania informacje, że ktoś daje, 470 00:23:08,770 --> 00:23:11,420 można potencjalnie pozwany. 471 00:23:11,420 --> 00:23:12,610 I na pewno nie chcemy. 472 00:23:12,610 --> 00:23:14,955 >> Więc kiedy jesteś wprowadzenie swoją stronę , i masz naprawdę fajne 473 00:23:14,955 --> 00:23:17,230 projekt, mam nadzieję, że Ci się niesamowity projekt końcowy. 474 00:23:17,230 --> 00:23:18,370 Wszelkie Ci rodzaj chcą umieścić go tam. 475 00:23:18,370 --> 00:23:21,420 Chcesz, aby upewnić się, że wszystko, co bierzesz od użytkownika, jeśli jest to 476 00:23:21,420 --> 00:23:25,310 identyfikowalne informacje osobiste, to Aby upewnić się, że jest naprawdę 477 00:23:25,310 --> 00:23:26,560 Uważaj z tym. 478 00:23:26,560 --> 00:23:29,670 479 00:23:29,670 --> 00:23:31,080 >> Wtrysk Shell. 480 00:23:31,080 --> 00:23:31,350 OK. 481 00:23:31,350 --> 00:23:37,590 Wtrysk Shell pozwala na intruza uzyskać dostęp do aktualnej linii poleceń 482 00:23:37,590 --> 00:23:39,660 w serwerze. 483 00:23:39,660 --> 00:23:44,060 I tak, że jest w stanie uruchomić kod , że nie można kontrolować. 484 00:23:44,060 --> 00:23:49,560 Weźmy na przykład ten piękny ciąg tutaj. 485 00:23:49,560 --> 00:23:55,570 Jeśli pójdziemy w stronę jeszcze raz, jestem pójdzie do iniekcji kodu. 486 00:23:55,570 --> 00:23:58,910 Więc co to robi, jest - 487 00:23:58,910 --> 00:24:00,420 jest to również to, co my patrząc na przed. 488 00:24:00,420 --> 00:24:11,200 Jesteśmy pozwalając użytkownikowi umieścić w dowolnej chce, i będzie drukować 489 00:24:11,200 --> 00:24:12,220 co chcesz. 490 00:24:12,220 --> 00:24:13,890 >> Więc mam zamiar zawiesić połączenie. 491 00:24:13,890 --> 00:24:15,540 Co to robi, jest - 492 00:24:15,540 --> 00:24:16,940 zacznie przez złączenie. 493 00:24:16,940 --> 00:24:19,520 Więc niech mi będzie prowadzony niezależnie Uruchamianie poleceń osoby 494 00:24:19,520 --> 00:24:21,500 przed, jak i dla mnie rozkazem. 495 00:24:21,500 --> 00:24:23,980 I używam polecenia systemowego. 496 00:24:23,980 --> 00:24:27,310 I te ostatnie słowa są - pamiętam to, co mówiłem do was, o, 497 00:24:27,310 --> 00:24:31,725 natomiast trzeba kodować że w sposobie URL. 498 00:24:31,725 --> 00:24:35,010 499 00:24:35,010 --> 00:24:36,992 Jeśli uruchomię to teraz - 500 00:24:36,992 --> 00:24:39,150 Pokażę ci tutaj - 501 00:24:39,150 --> 00:24:41,100 zobaczysz, że skończyło się uruchomienie polecenia. 502 00:24:41,100 --> 00:24:45,700 503 00:24:45,700 --> 00:24:49,320 >> To jest rzeczywiście rzeczywiste serwer że moja strona działa na. 504 00:24:49,320 --> 00:24:55,840 505 00:24:55,840 --> 00:24:58,510 Więc my nie chcemy, bo mogę uruchomić - 506 00:24:58,510 --> 00:25:00,320 Ten serwer nie jest mój. 507 00:25:00,320 --> 00:25:04,030 Więc ja nie chcę zepsuć jego siostra, serwer Marcusa. 508 00:25:04,030 --> 00:25:07,470 Ale można uruchomić więcej poleceń , że są niebezpieczne. 509 00:25:07,470 --> 00:25:11,885 I potencjalnie, można usunąć plików, usunąć katalogi. 510 00:25:11,885 --> 00:25:14,390 511 00:25:14,390 --> 00:25:17,970 Można usunąć jakiegoś katalogu, jeśli Chciałem, ale nie chcę 512 00:25:17,970 --> 00:25:19,530 aby to zrobić, aby Marcus. 513 00:25:19,530 --> 00:25:20,420 To miły facet. 514 00:25:20,420 --> 00:25:21,470 Pozwolił mi pożyczyć swój serwer. 515 00:25:21,470 --> 00:25:24,620 Więc mam zamiar mu dać off na dobry. 516 00:25:24,620 --> 00:25:32,280 >> Tak więc to, czego nie chcesz używać - nie użyć eval lub system. 517 00:25:32,280 --> 00:25:34,755 Eval lub system pozwala nam na dokonać tych wywołań systemowych. 518 00:25:34,755 --> 00:25:37,410 519 00:25:37,410 --> 00:25:38,410 Eval sposobem oceny. 520 00:25:38,410 --> 00:25:40,790 System oznacza co wpadłem. 521 00:25:40,790 --> 00:25:42,490 Jest prowadzony coś w systemie. 522 00:25:42,490 --> 00:25:46,730 Ale możemy zakazać tych rzeczy w PHP tak, aby ich nie używać. 523 00:25:46,730 --> 00:25:47,400 I przesyłanie plików. 524 00:25:47,400 --> 00:25:49,180 Miałem zamiar zrobić niesamowite co z wysyłania pliku. 525 00:25:49,180 --> 00:25:52,740 Ale tak jak wam powiedziałem, mój plik Prześlij rzecz nie działa. 526 00:25:52,740 --> 00:25:54,590 Gdybym przesłać plik teraz - 527 00:25:54,590 --> 00:25:57,120 528 00:25:57,120 --> 00:26:00,830 gdybym przesłać plik, i to jest obraz - 529 00:26:00,830 --> 00:26:03,180 masz coś przesyłania to jest obraz. 530 00:26:03,180 --> 00:26:03,660 To dobrze. 531 00:26:03,660 --> 00:26:04,280 Nic się nie dzieje. 532 00:26:04,280 --> 00:26:10,840 >> Ale jeśli masz plik, do wysyłania przykładem, a użytkownik faktycznie dodane 533 00:26:10,840 --> 00:26:19,220 plik PHP lub exe czy coś tak, to może potencjalnie 534 00:26:19,220 --> 00:26:19,740 problem. 535 00:26:19,740 --> 00:26:21,390 Ten pracował wcześniej. 536 00:26:21,390 --> 00:26:25,202 Niestety dla mnie, to jest nie działa już. 537 00:26:25,202 --> 00:26:30,230 Jeśli, na przykład, przesłać plik, jestem nie dostanę pozwolenie, aby przesłać 538 00:26:30,230 --> 00:26:33,400 pliku z powodu serwera nie jest moja. 539 00:26:33,400 --> 00:26:38,670 Więc facet jest naprawdę mądry. 540 00:26:38,670 --> 00:26:39,610 >> Więc nie chcesz - 541 00:26:39,610 --> 00:26:40,130 Zamierzam pokazać chłopaki - 542 00:26:40,130 --> 00:26:41,840 OK, to są naprawdę fajne narzędzia. 543 00:26:41,840 --> 00:26:45,100 Więc te - 544 00:26:45,100 --> 00:26:47,715 przejść do - jeśli macie Firefox - miejmy nadzieję, że tak. 545 00:26:47,715 --> 00:26:54,260 Są dwa dodatki zwane SQL Inject Ja i skryptów krzyżowych Me. 546 00:26:54,260 --> 00:26:56,870 Otwierają się jak mały bok bary na stronie. 547 00:26:56,870 --> 00:27:01,480 I gdybym miał iść do CS60 na przykład - 548 00:27:01,480 --> 00:27:04,210 więc co robi to wygląda Dla wszystkich postaci, które - 549 00:27:04,210 --> 00:27:07,220 550 00:27:07,220 --> 00:27:08,760 miejmy nadzieję, że nie będzie kłopoty na tym. 551 00:27:08,760 --> 00:27:09,190 >> Ale OK. 552 00:27:09,190 --> 00:27:12,600 Oto układ stykowy. 553 00:27:12,600 --> 00:27:18,946 Kiedy więc zacząć szukać dziury w System, pierwsze co robię to 554 00:27:18,946 --> 00:27:21,820 otwórz ten piękny mały Narzędzie z boku. 555 00:27:21,820 --> 00:27:24,160 I mam zamiar przetestować formy z atakami auto. 556 00:27:24,160 --> 00:27:28,510 I tak, co to robi to powoli otworzyć kilka przeglądarek. 557 00:27:28,510 --> 00:27:29,930 Oto kilka przeglądarek. 558 00:27:29,930 --> 00:27:33,320 I próbuje każdego połączenia cross-site scripting 559 00:27:33,320 --> 00:27:37,380 że możliwe jest, w przypadku można zobaczyć na stronie. 560 00:27:37,380 --> 00:27:42,080 >> I to daje mi wynik jakby co odpowiedzią jest. 561 00:27:42,080 --> 00:27:42,860 Wszystko przejść. 562 00:27:42,860 --> 00:27:43,910 Oczywiście, wszystkie one przechodzą. 563 00:27:43,910 --> 00:27:46,190 Chodzi mi o to, że są bardzo inteligentne ludzie tam. 564 00:27:46,190 --> 00:27:48,010 Ale gdybym miał do uruchomienia - 565 00:27:48,010 --> 00:27:52,050 Miałem razy wcześniej, kiedy to uruchomić na końcowych projektów studenckich. 566 00:27:52,050 --> 00:27:56,080 Ja po prostu uruchomić z programu SQL Inject Me wszystkie inne ataki. 567 00:27:56,080 --> 00:28:00,080 I próbuje SQL inject serwer ten pin. 568 00:28:00,080 --> 00:28:03,590 Jeśli więc przewijać w dół, na Na przykład, mówi - 569 00:28:03,590 --> 00:28:04,960 to jest dobre, jeśli zwróci. 570 00:28:04,960 --> 00:28:08,250 >> Tak testowany jest kilka pewnych wartości. 571 00:28:08,250 --> 00:28:11,170 I zwracane przez serwer Kod, który był ujemny. 572 00:28:11,170 --> 00:28:11,780 Usuń tymczasowo. 573 00:28:11,780 --> 00:28:13,030 To jest dobre. 574 00:28:13,030 --> 00:28:17,050 575 00:28:17,050 --> 00:28:20,750 Próbuje wszystkie te testy. 576 00:28:20,750 --> 00:28:21,790 Więc może po prostu uruchomić - 577 00:28:21,790 --> 00:28:27,860 Chciałbym znaleźć na stronie internetowej rzeczywiście szybkie, że mi pozwolisz - 578 00:28:27,860 --> 00:28:29,110 może przechowywać CS50. 579 00:28:29,110 --> 00:28:43,890 580 00:28:43,890 --> 00:28:45,711 >> Wow, to będzie brać zbyt długo. 581 00:28:45,711 --> 00:28:53,090 582 00:28:53,090 --> 00:28:55,130 Dam pierwszy test Nie ukończył prawo. 583 00:28:55,130 --> 00:28:57,330 Więc to narzekać. 584 00:28:57,330 --> 00:28:58,470 To są trzy rzeczy. 585 00:28:58,470 --> 00:29:00,430 Narzędzia te są darmowe. 586 00:29:00,430 --> 00:29:03,960 Można je pobrać i uruchomić je na Twoja strona, i to ci powiem, jeśli 587 00:29:03,960 --> 00:29:06,650 masz cross-site scripting, jeśli masz SQL, jeśli masz 588 00:29:06,650 --> 00:29:07,900 coś jak. 589 00:29:07,900 --> 00:29:12,230 590 00:29:12,230 --> 00:29:14,500 Jestem rodzaj bałaganu. 591 00:29:14,500 --> 00:29:15,550 >> Co ważne - 592 00:29:15,550 --> 00:29:17,900 OK, więc nigdy nie ufaj użytkownikowi. 593 00:29:17,900 --> 00:29:21,920 Bez względu na wprowadzane przez użytkownika do Ciebie, upewnij pewien, że go zdezynfekować, oczyścić go, 594 00:29:21,920 --> 00:29:25,300 sprawdzić na właściwe rzeczy, że daje ci to, czego 595 00:29:25,300 --> 00:29:28,240 chce mu dać. 596 00:29:28,240 --> 00:29:32,460 Zawsze być aktualizowana co ramy że jesteś rzeczywiście użyciu. 597 00:29:32,460 --> 00:29:34,630 Jeśli używasz coś jak bootstrap - 598 00:29:34,630 --> 00:29:36,340 Wiem, że macie zamiar używać bootstrap bo pójdzie 599 00:29:36,340 --> 00:29:38,140 na to tylko w klasie - 600 00:29:38,140 --> 00:29:43,120 i Wordpress lub coś w tym stylu, normalnie to może być posiekany. 601 00:29:43,120 --> 00:29:44,770 >> A potem nawet nie wiem. 602 00:29:44,770 --> 00:29:45,800 Jesteś po prostu działa swoją stronę. 603 00:29:45,800 --> 00:29:47,360 I jest to całkowicie bezpieczne. 604 00:29:47,360 --> 00:29:51,730 I zejść. 605 00:29:51,730 --> 00:29:54,000 Więc jestem naprawdę wcześnie łowienie. 606 00:29:54,000 --> 00:29:55,770 Ale chcę podziękować Pentest Labs. 607 00:29:55,770 --> 00:29:58,140 Mam zamiar pokazać wam coś nazywa Pentest Labs. 608 00:29:58,140 --> 00:30:05,000 Jeśli faceci są naprawdę zainteresowany co bezpieczeństwo jest naprawdę, nie ma 609 00:30:05,000 --> 00:30:07,300 strona nazywa Pentest Labs, jeśli wy pójść do niej teraz. 610 00:30:07,300 --> 00:30:10,730 Och, dobrze, że nie o to chodzi. 611 00:30:10,730 --> 00:30:12,030 Mam zamiar uruchomić go w ten sposób. 612 00:30:12,030 --> 00:30:14,400 Google mówi mi odpowiedź. 613 00:30:14,400 --> 00:30:16,590 >> OK. 614 00:30:16,590 --> 00:30:19,030 I uczy cię wykorzystać - więc mówi, dowiedzieć penetracji internetowej 615 00:30:19,030 --> 00:30:21,060 badania na właściwą drogę. 616 00:30:21,060 --> 00:30:23,650 To uczy - 617 00:30:23,650 --> 00:30:25,150 mam nadzieję, że jesteś osobą etyczną. 618 00:30:25,150 --> 00:30:29,200 Ale uczy, jak można spojrzeć na jak można dostać się stron internetowych. 619 00:30:29,200 --> 00:30:31,130 A jeśli dowiesz się, jak można dostać się do środka stron internetowych, można dowiedzieć się, jak 620 00:30:31,130 --> 00:30:34,960 chronić się przed coraz wewnątrz strony. 621 00:30:34,960 --> 00:30:39,100 Pozwól mi powiększać bo może wy nie patrząc na to prawo. 622 00:30:39,100 --> 00:30:46,350 >> Z SQL injection zapłacić, więc rodzaju, jak można uzyskać z SQL 623 00:30:46,350 --> 00:30:48,530 wtrysk zapłacić. 624 00:30:48,530 --> 00:30:53,890 I pobrać tę maszynę wirtualną. 625 00:30:53,890 --> 00:30:55,690 I już jest maszyna wirtualna ze strony internetowej, że jesteś 626 00:30:55,690 --> 00:30:56,780 spróbuję go. 627 00:30:56,780 --> 00:30:58,030 Możesz pobrać ten plik PDF. 628 00:30:58,030 --> 00:31:03,610 629 00:31:03,610 --> 00:31:08,370 I pokaże linia po linii, co co musisz zrobić, co sprawdzić. 630 00:31:08,370 --> 00:31:14,560 To jest to, co w rzeczywistości atakujący nie dostać się do środka na stronie internetowej. 631 00:31:14,560 --> 00:31:15,750 >> A niektóre z tych rzeczy jest skomplikowane. 632 00:31:15,750 --> 00:31:17,520 Chciałabym pójść na więcej rzeczy z wami. 633 00:31:17,520 --> 00:31:21,090 Ale obawiam się, że chłopaki nie ma naprawdę - 634 00:31:21,090 --> 00:31:23,090 to jest to, co ja przeszedłem z wy web testy 635 00:31:23,090 --> 00:31:26,830 do testów penetracyjnych. 636 00:31:26,830 --> 00:31:33,540 Tak naprawdę nie wiem, co SQL jest i co - 637 00:31:33,540 --> 00:31:35,960 Seminarium Carl Jacksona to niesamowite, jak dobrze. 638 00:31:35,960 --> 00:31:37,360 Chłopaki nie wiem sortowania z tego, co to jest. 639 00:31:37,360 --> 00:31:39,450 Ale jeśli pójdziesz do tej strony, a pobrać te tutoriale i te 640 00:31:39,450 --> 00:31:43,290 Plików PDF, można spojrzeć na rodzaj co obszar bezpieczeństwa naprawdę 641 00:31:43,290 --> 00:31:46,940 z testów penetracyjnych, zobaczyć, jak to tylko możliwe dostać się do środka i ochrony stron internetowych 642 00:31:46,940 --> 00:31:48,020 się od niego. 643 00:31:48,020 --> 00:31:56,360 >> Więc jeśli zrobię super szybki przegląd, to będzie uniknąć cross-site scripting. 644 00:31:56,360 --> 00:32:00,160 Chcesz korzystać każdy htmlspecialchars razem coś wejścia użytkownika. 645 00:32:00,160 --> 00:32:01,580 Zapobiec SQL injection. 646 00:32:01,580 --> 00:32:04,510 Jeśli to zrobisz, jesteś już lepiej niż Harvard był 647 00:32:04,510 --> 00:32:06,530 kiedy dostałem naruszone. 648 00:32:06,530 --> 00:32:10,510 I upewnij się, że Twoje hasła nie są w postaci zwykłego tekstu. 649 00:32:10,510 --> 00:32:16,220 Upewnij się, że nie tylko jeden sposób mieszania je jednak, że używasz krypty, PHP 650 00:32:16,220 --> 00:32:18,670 Funkcja że pokazałem wam. 651 00:32:18,670 --> 00:32:20,060 W ten sposób, powinno być dobrze. 652 00:32:20,060 --> 00:32:25,830 >> Ponadto, jeśli twoi przyjaciele pozwalają uruchomić SQL Inject Me na swoich stronach internetowych. 653 00:32:25,830 --> 00:32:28,140 Uruchom cross-site scripting na swoich stronach internetowych. 654 00:32:28,140 --> 00:32:33,720 , A zobaczysz dużo tych stron mają mnóstwo luk. 655 00:32:33,720 --> 00:32:40,400 To niesamowite, jak wiele osób zapomina do dezynfekcji swoje bazy danych lub do 656 00:32:40,400 --> 00:32:46,340 pewien, co wprowadzeniu osoby Nie jest kod skryptu. 657 00:32:46,340 --> 00:32:47,200 OK. 658 00:32:47,200 --> 00:32:49,182 I jakby zakończył bardzo wcześnie. 659 00:32:49,182 --> 00:32:56,510 Ale jeśli ktoś ma jakieś pytania dotyczące cokolwiek, można strzelać do mnie pytanie. 660 00:32:56,510 --> 00:32:56,630 Tak. 661 00:32:56,630 --> 00:32:56,970 Idź, idź. 662 00:32:56,970 --> 00:32:59,846 >> PUBLICZNOŚCI: Chcę tylko zapytać, można wyjaśnić, jak plikowi 663 00:32:59,846 --> 00:33:03,160 przesłać dokładnie prace. 664 00:33:03,160 --> 00:33:03,480 >> LUCIANO ARANGO: Tak. 665 00:33:03,480 --> 00:33:06,350 Więc pozwól mi pokazać plik przesłać bardzo szybko. 666 00:33:06,350 --> 00:33:11,300 Więc przesyłanie plików - 667 00:33:11,300 --> 00:33:14,500 Problem dowcip przesyłanie plików w tej chwili jest to, że - 668 00:33:14,500 --> 00:33:18,541 Zamierzam otworzyć kod, tak wy zobaczyć kod za kulisy. 669 00:33:18,541 --> 00:33:22,390 670 00:33:22,390 --> 00:33:24,305 I to jest przesłać. 671 00:33:24,305 --> 00:33:28,030 672 00:33:28,030 --> 00:33:31,560 Oto kod na uploader pliku. 673 00:33:31,560 --> 00:33:33,980 >> Staramy się iść do tego katalog tutaj. 674 00:33:33,980 --> 00:33:37,380 675 00:33:37,380 --> 00:33:44,880 I staramy się, jak tylko wejście plik, plik isset - tak, gdy istnieje 676 00:33:44,880 --> 00:33:50,900 złożyć w plikach, tego obrazu, a następnie staramy się przenieść go tutaj. 677 00:33:50,900 --> 00:33:51,910 Pobieramy plik tutaj. 678 00:33:51,910 --> 00:33:58,350 Metoda jest POST, typ, obraz, plik. 679 00:33:58,350 --> 00:33:59,630 I wysyłamy tego pliku. 680 00:33:59,630 --> 00:34:03,910 A następnie raz nam się go zdobyć, więc gdy plik ma obrazu, próbujemy wysłać go 681 00:34:03,910 --> 00:34:05,060 do tego katalogu. 682 00:34:05,060 --> 00:34:09,814 >> Problemem jest to, że strona nie jest pozwolił mi iść do tego katalogu, 683 00:34:09,814 --> 00:34:12,239 dlatego, że nie chce mi się wracać. 684 00:34:12,239 --> 00:34:13,489 Nie chce mi się iść - 685 00:34:13,489 --> 00:34:15,620 686 00:34:15,620 --> 00:34:17,070 Muszę iść - więc o to przesłać. 687 00:34:17,070 --> 00:34:17,639 Oto zdjęcia. 688 00:34:17,639 --> 00:34:21,780 Muszę przejść całą drogę z powrotem do początek i umieścić go tam, a następnie 689 00:34:21,780 --> 00:34:23,820 go i umieścić go w katalogu. 690 00:34:23,820 --> 00:34:30,000 Więc gdybym biegał okno terminala, i chciałem przenieść plik - 691 00:34:30,000 --> 00:34:30,409 [Niesłyszalne] 692 00:34:30,409 --> 00:34:32,159 Można go zobaczyć. 693 00:34:32,159 --> 00:34:37,940 Gdybym chciał przenieść plik, mam umieścić nazwę pliku, a następnie 694 00:34:37,940 --> 00:34:40,860 pełna ścieżka Chcę wysłać go. 695 00:34:40,860 --> 00:34:45,110 >> A następnie serwer nie jest pozwolił mi wrócić. 696 00:34:45,110 --> 00:34:46,929 A więc to nie jest najmu mi dostać się do tego pliku. 697 00:34:46,929 --> 00:34:47,670 Ale normalnie - 698 00:34:47,670 --> 00:34:49,360 więc jest kod na wysyłanie pliku. 699 00:34:49,360 --> 00:34:52,260 Tak normalnie, co się stanie, że Osoba nie jest sprawdzenie, czy mój plik 700 00:34:52,260 --> 00:34:57,920 kończy. jpeg, więc chciałbym sprawdzić. 701 00:34:57,920 --> 00:35:00,054 Pozwól mi otworzyć przykład zbyt bardzo szybko. 702 00:35:00,054 --> 00:35:07,766 703 00:35:07,766 --> 00:35:08,260 >> OK. 704 00:35:08,260 --> 00:35:09,230 Ten człowiek prawy - 705 00:35:09,230 --> 00:35:11,980 tak np. dwa sprawdza jeśli preg_match - 706 00:35:11,980 --> 00:35:14,180 oto jest tutaj - 707 00:35:14,180 --> 00:35:19,660 aby upewnić się, że kończy się PHP, co jest dobre. 708 00:35:19,660 --> 00:35:20,580 To jest dobre. 709 00:35:20,580 --> 00:35:22,820 Ale jest naprawdę duży Problem z tym. 710 00:35:22,820 --> 00:35:24,600 To jest dobre. 711 00:35:24,600 --> 00:35:44,190 Ale jeśli miałbym umieścić plik o nazwie myfavoritepicture.php.jpeg, mogłem 712 00:35:44,190 --> 00:35:50,060 wciąż potencjalnie pozbyć jpeg i uruchomić it.k że PHP jest niebezpieczny. 713 00:35:50,060 --> 00:35:53,850 Nie chcesz, aby być w stanie osoba uruchomić kod na swojej stronie. 714 00:35:53,850 --> 00:35:55,750 >> Ale wtedy. JPEG pozwala mu przejść. 715 00:35:55,750 --> 00:36:00,720 Chodzi o to, co naprawdę chcesz robić nie wziąć plików, A. Ale ok, co 716 00:36:00,720 --> 00:36:07,500 naprawdę chcesz zrobić, to upewnić się, że można przeczytać na całym świecie. 717 00:36:07,500 --> 00:36:08,720 I nie ma nic. Php w nim. 718 00:36:08,720 --> 00:36:10,500 Nie ma. Php w Cała nazwa pliku. 719 00:36:10,500 --> 00:36:12,780 >> PUBLICZNOŚCI: Ale mogłeś umieścić. jpeg na koniec. 720 00:36:12,780 --> 00:36:15,830 Serwery nadal uruchomić kod. 721 00:36:15,830 --> 00:36:16,870 >> LUCIANO ARANGO: Nie, to nie będzie uruchomić na początku. 722 00:36:16,870 --> 00:36:22,310 Musisz wrócić i spróbować aby sprawdzić, czy można - 723 00:36:22,310 --> 00:36:24,210 >> PUBLICZNOŚCI: Więc musimy - 724 00:36:24,210 --> 00:36:26,020 OK, po prostu inny zestaw, który obejmuje - 725 00:36:26,020 --> 00:36:26,936 >> LUCIANO ARANGO: Tak. 726 00:36:26,936 --> 00:36:29,230 >> PUBLICZNOŚCI: OK. 727 00:36:29,230 --> 00:36:31,486 >> LUCIANO ARANGO: Tak. 728 00:36:31,486 --> 00:36:31,900 OK. 729 00:36:31,900 --> 00:36:32,865 Wszelkie inne pytania? 730 00:36:32,865 --> 00:36:33,180 OK. 731 00:36:33,180 --> 00:36:37,350 Mam zamiar zostawić to i sortować z spróbować sprawdzić, czy wy może - 732 00:36:37,350 --> 00:36:40,490 pozostałe z nich są nieco bardziej skomplikowany, ponieważ wymaga znacznie 733 00:36:40,490 --> 00:36:44,050 więcej znajomość SQL, niż tylko zaczynając znajomość internetowej SQL jest i 734 00:36:44,050 --> 00:36:47,010 co jest obsługa JavaScript. 735 00:36:47,010 --> 00:36:49,730 Ale mam zamiar starać się utrzymać to w górę, i mam nadzieję, że chłopaki będą uczyć 736 00:36:49,730 --> 00:36:53,230 o tym i starają się rzucić okiem na co można zrobić i jak wiele przykładów 737 00:36:53,230 --> 00:36:54,420 można dotrzeć. 738 00:36:54,420 --> 00:36:56,020 >> Każdy ma inny pytania o niego? 739 00:36:56,020 --> 00:36:59,387 740 00:36:59,387 --> 00:37:00,350 Śmiało. 741 00:37:00,350 --> 00:37:01,170 Tak, strzelać, strzelać. 742 00:37:01,170 --> 00:37:01,580 Tak, proszę bardzo. 743 00:37:01,580 --> 00:37:01,850 Śmiało. 744 00:37:01,850 --> 00:37:02,310 >> PUBLICZNOŚCI: OK. 745 00:37:02,310 --> 00:37:08,870 Słyszałem o tym, jak magia Cytaty nie są wystarczająco bezpieczne. 746 00:37:08,870 --> 00:37:09,280 >> LUCIANO ARANGO: Co - 747 00:37:09,280 --> 00:37:10,110 Magiczne notowania? 748 00:37:10,110 --> 00:37:10,595 >> PUBLICZNOŚCI: Tak. 749 00:37:10,595 --> 00:37:15,445 Więc dodaje - więc kiedy tylko wejście coś, to zawsze dodaje cytaty. 750 00:37:15,445 --> 00:37:15,930 >> LUCIANO ARANGO: Tak. 751 00:37:15,930 --> 00:37:16,000 Tak. 752 00:37:16,000 --> 00:37:16,496 OK. 753 00:37:16,496 --> 00:37:19,113 >> PUBLICZNOŚCI: I wtedy jednak, że pracował, ale szukałem go. 754 00:37:19,113 --> 00:37:21,648 I powiedział, że to nie jest dobre. 755 00:37:21,648 --> 00:37:23,050 Ale nie jestem pewien, dlaczego. 756 00:37:23,050 --> 00:37:23,360 >> LUCIANO ARANGO: Tak. 757 00:37:23,360 --> 00:37:26,240 >> PUBLICZNOŚCI: Nie używaj magicznych notowania, bo to nie jest bezpieczne. 758 00:37:26,240 --> 00:37:26,360 >> LUCIANO ARANGO: OK. 759 00:37:26,360 --> 00:37:31,735 Magiczne notowania jest tak po włożeniu SQL i to już dodaje cytat dla Ciebie. 760 00:37:31,735 --> 00:37:33,520 >> PUBLICZNOŚCI: To zawsze dodaje cytaty wokół cokolwiek umieścić w. 761 00:37:33,520 --> 00:37:34,210 >> LUCIANO ARANGO: Tak. 762 00:37:34,210 --> 00:37:37,190 Więc problem z tym jest to, że - 763 00:37:37,190 --> 00:37:38,445 Będę przyjrzeć - 764 00:37:38,445 --> 00:37:41,390 >> PUBLICZNOŚCI: W jaki sposób nabywać Instrukcja SQL? 765 00:37:41,390 --> 00:37:44,690 I myślę, że to może być jak cytat wybrać. 766 00:37:44,690 --> 00:37:49,030 >> LUCIANO ARANGO: Tak, trzeba dobre notowania SQL. 767 00:37:49,030 --> 00:37:52,900 >> PUBLICZNOŚCI: Nie, ale serwer zrobi to za Ciebie. 768 00:37:52,900 --> 00:37:54,460 >> LUCIANO ARANGO: Te małe cytaty tu, te małe cytaty? 769 00:37:54,460 --> 00:37:55,670 >> PUBLICZNOŚCI: Tak. 770 00:37:55,670 --> 00:37:56,450 >> LUCIANO ARANGO: Tak. 771 00:37:56,450 --> 00:37:59,860 Problemem jest to, że można ustosunkowania się ostatnio - 772 00:37:59,860 --> 00:38:05,770 OK, więc to, co mogę zrobić, to mogę skomentować się - więc rzućmy okiem na - pozwól mi 773 00:38:05,770 --> 00:38:07,920 otworzyć plik edycji tekstu. 774 00:38:07,920 --> 00:38:09,610 Pozwólcie mi tylko zmodyfikować tutaj bezpośrednio. 775 00:38:09,610 --> 00:38:19,510 776 00:38:19,510 --> 00:38:20,400 OK. 777 00:38:20,400 --> 00:38:23,710 Można wyraźnie zobaczyć, że chłopaki? 778 00:38:23,710 --> 00:38:29,730 Co mogę zrobić, to mogę skomentować z ostatniego. 779 00:38:29,730 --> 00:38:32,190 To komentarz z ostatniego. 780 00:38:32,190 --> 00:38:36,760 A następnie włożę je tutaj umieścić wszystkie złośliwe rzeczy tutaj. 781 00:38:36,760 --> 00:38:39,840 782 00:38:39,840 --> 00:38:42,630 >> Więc użytkownik jest rzeczywiście wprowadzania, prawda? 783 00:38:42,630 --> 00:38:45,230 Użytkownik nie jest wprowadzanie rzeczy, prawda? 784 00:38:45,230 --> 00:38:47,430 To jest to, co mam zamiar wejścia w osób próbuje dostać się do środka. 785 00:38:47,430 --> 00:38:49,430 Mam zamiar umieścić w - 786 00:38:49,430 --> 00:38:59,290 787 00:38:59,290 --> 00:39:00,180 to jest jeden cudzysłów. 788 00:39:00,180 --> 00:39:01,760 To tylko falowane przez pomyłkę. 789 00:39:01,760 --> 00:39:15,080 790 00:39:15,080 --> 00:39:19,400 I co wtedy kod to zrobić - 791 00:39:19,400 --> 00:39:20,190 Przepraszam, mam zamiar wziąć to. 792 00:39:20,190 --> 00:39:22,170 Jaki kod będzie zrobić, to to będzie dodać pierwszy 793 00:39:22,170 --> 00:39:24,030 cudzysłowów tutaj. 794 00:39:24,030 --> 00:39:26,040 I to będzie dodawać ostatnia cudzysłów, jak również. 795 00:39:26,040 --> 00:39:29,350 796 00:39:29,350 --> 00:39:33,270 >> I to też będzie dodać ostatni, ostatni cudzysłów. 797 00:39:33,270 --> 00:39:37,380 Ale jestem komentując te cytat zaznacza się, żeby nie uruchomić. 798 00:39:37,380 --> 00:39:41,440 I kończę ten cytat zaznaczyć tutaj. 799 00:39:41,440 --> 00:39:42,290 Czy rozumiesz? 800 00:39:42,290 --> 00:39:43,750 Zgubiłeś się? 801 00:39:43,750 --> 00:39:45,880 Mogę skomentować ostatni cytat znak, i dbać o 802 00:39:45,880 --> 00:39:46,680 pierwszy cudzysłów. 803 00:39:46,680 --> 00:39:47,350 >> PUBLICZNOŚCI: I tylko wykończenie pierwszy. 804 00:39:47,350 --> 00:39:47,480 >> LUCIANO ARANGO: Tak. 805 00:39:47,480 --> 00:39:48,400 I tak kończy się pierwszy. 806 00:39:48,400 --> 00:39:48,790 Tak, to prawda. 807 00:39:48,790 --> 00:39:50,800 To, co mogę zrobić. 808 00:39:50,800 --> 00:39:51,890 Tak. 809 00:39:51,890 --> 00:39:52,980 Wszelkie inne pytania, takie jak to? 810 00:39:52,980 --> 00:39:54,230 To jest wielkie pytanie. 811 00:39:54,230 --> 00:39:56,960 812 00:39:56,960 --> 00:39:59,790 No, tak, może. 813 00:39:59,790 --> 00:40:06,150 Miejmy nadzieję, że chłopaki będą jakby zrobić więcej sensu, kiedy uczysz się SQL i 814 00:40:06,150 --> 00:40:06,650 takie rzeczy. 815 00:40:06,650 --> 00:40:07,980 Ale upewnij się, że - 816 00:40:07,980 --> 00:40:10,340 zachować te narzędzia w zegarku. 817 00:40:10,340 --> 00:40:12,760 Niestety, narzędzia te tutaj. 818 00:40:12,760 --> 00:40:14,200 Narzędzia te są świetne. 819 00:40:14,200 --> 00:40:17,190 Jeśli ktoś ma jakieś pytania, można również napisz do mnie. 820 00:40:17,190 --> 00:40:19,020 To jest mój normalny email. 821 00:40:19,020 --> 00:40:25,015 I to jest mój e-mail pracy, które jest wtedy, gdy pracuję na morzu. 822 00:40:25,015 --> 00:40:26,040 >> OK, dzięki. 823 00:40:26,040 --> 00:40:26,740 Dzięki, chłopaki. 824 00:40:26,740 --> 00:40:27,860 Jesteś dobry, aby przejść. 825 00:40:27,860 --> 00:40:28,830 Nie musisz się tu zatrzymać. 826 00:40:28,830 --> 00:40:29,570 Nie klaskać. 827 00:40:29,570 --> 00:40:30,170 To dziwne. 828 00:40:30,170 --> 00:40:31,420 OK, dzięki, chłopaki. 829 00:40:31,420 --> 00:40:32,320