1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:10,300 >> LUCIANO Arango: OK, guys. 3 00:00:10,300 --> 00:00:11,550 My naam is Luciano Arango. 4 00:00:11,550 --> 00:00:13,915 Ek is 'n stage in Adams House. 5 00:00:13,915 --> 00:00:17,550 En ons gaan om te praat oor Web Security aktiewe verdediging. 6 00:00:17,550 --> 00:00:24,220 So ek werk vir die Kantoor van Inligting Sekuriteit in SEAS. 7 00:00:24,220 --> 00:00:28,670 En oor die somer, ek geïnterneer by SeguraTec, wat 'n inligting 8 00:00:28,670 --> 00:00:31,310 sekuriteitsmaatskappy wat gedien vir die Bank van Columbia. 9 00:00:31,310 --> 00:00:34,740 Dit is meestal waar ek geleer wat ek tot dusver geleer het. 10 00:00:34,740 --> 00:00:37,990 >> En so 'n paar van die materiaal wat ons is gaan om te gaan oor vandag, ons het nie 11 00:00:37,990 --> 00:00:39,670 regtig gepraat oor in die klas. 12 00:00:39,670 --> 00:00:40,410 Maar ons sal binnekort. 13 00:00:40,410 --> 00:00:42,360 Dit gaan wees soos SQL, JavaScript. 14 00:00:42,360 --> 00:00:44,870 En ons het nie regtig gaan oor dit. 15 00:00:44,870 --> 00:00:47,730 So ek kan soort van vlug deur dit, en jy dalk nie weet 'n paar dinge. 16 00:00:47,730 --> 00:00:48,890 Maar gou, sal jy dit leer. 17 00:00:48,890 --> 00:00:52,080 En dit sal alles sin maak. 18 00:00:52,080 --> 00:00:54,010 Ook 'n ander ding - 19 00:00:54,010 --> 00:00:55,780 bly etiese. 20 00:00:55,780 --> 00:01:00,560 Sommige van die dinge wat jy leer, jy kan gebruik in 'n nie-etiese maniere. 21 00:01:00,560 --> 00:01:01,950 >> As dit is joune, beslis probeer. 22 00:01:01,950 --> 00:01:04,500 Ek het beslis motiveer julle jou eie bedieners om te probeer, probeer 23 00:01:04,500 --> 00:01:05,519 gaan binne-in hulle. 24 00:01:05,519 --> 00:01:08,500 Sien as jy hulle kan deurdring, As jy kan kry in hulle. 25 00:01:08,500 --> 00:01:09,560 Maar dit is nie iemand anders is. 26 00:01:09,560 --> 00:01:12,390 Polisie het nie regtig wil nie die grappies en die hele, ons sit hierdie hier. 27 00:01:12,390 --> 00:01:14,040 Ons was rond. 28 00:01:14,040 --> 00:01:15,780 Hulle kry baie kwaad. 29 00:01:15,780 --> 00:01:18,700 >> So kop bo aan hierdie webwerf. 30 00:01:18,700 --> 00:01:23,560 Ek het dit oopgemaak hier. 31 00:01:23,560 --> 00:01:26,780 Dit is 'n webwerf, en dit het 'n klomp van die voorbeelde. 32 00:01:26,780 --> 00:01:30,000 Wat gebeur is dat die eerste voorbeeld is 'n soort van gaan na 'n baie makliker 33 00:01:30,000 --> 00:01:33,470 as die laaste voorbeeld in 'n sin dat die eerste voorbeeld 34 00:01:33,470 --> 00:01:34,970 is heeltemal onseker. 35 00:01:34,970 --> 00:01:40,850 En die laaste een is 'n soort van wat 'n normale web sekuriteit persoon sou doen. 36 00:01:40,850 --> 00:01:42,760 Maar jy kan nog steeds soort van kry rondom dit. 37 00:01:42,760 --> 00:01:44,860 En ons gaan fokus op een en twee, voorbeelde een en twee. 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 Kom ons begin met kruis-site scripting. 41 00:01:52,780 --> 00:01:56,100 Die JavaScript is loop op die kliënt se leser. 42 00:01:56,100 --> 00:01:59,980 Dit is 'n programmeertaal wat jy gebruik uit te voer op die leser van die kliënt se so 43 00:01:59,980 --> 00:02:04,120 jy hoef nie die webwerf te werk en terug na die bediener gaan. 44 00:02:04,120 --> 00:02:04,940 Jy moet dit hardloop. 45 00:02:04,940 --> 00:02:08,870 Byvoorbeeld, Facebook, het jy nie die webwerf vir 'n nuwe status op te laai 46 00:02:08,870 --> 00:02:09,710 updates te kom. 47 00:02:09,710 --> 00:02:12,170 Dit is met behulp van JavaScript te genereer al hierdie dinge. 48 00:02:12,170 --> 00:02:16,290 So kan ons spuit kwaadwillige JavaScript in die webtuistes. 49 00:02:16,290 --> 00:02:20,890 En op die manier, wanneer ons stuur 'n skakel na iemand, kan ons soort van stuur dit met 50 00:02:20,890 --> 00:02:23,050 sommige van die kode wat ons wil hê. 51 00:02:23,050 --> 00:02:26,450 >> Daar is aanhoudende en nie-aanhoudende JavaScript - 52 00:02:26,450 --> 00:02:30,640 aanhoudende en nie-aanhoudende kruis-site script, ek bedoel. 53 00:02:30,640 --> 00:02:33,760 En die verskil is dat die aanhoudende is JavaScript dit sal wees 54 00:02:33,760 --> 00:02:36,060 gestoor word op die webwerf. 55 00:02:36,060 --> 00:02:39,780 En nie-aanhoudende sal wees JavaScript wat eintlik net een keer gebeur. 56 00:02:39,780 --> 00:02:41,795 So laat ons kyk na 'n voorbeeld ware vinnig. 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 So hierdie webwerf, eenvoudige, niks gebeur hier. 60 00:02:51,620 --> 00:02:53,070 En ons gaan om te probeer om voeg 'n paar JavaScript. 61 00:02:53,070 --> 00:02:58,110 So het die manier waarop ons begin skryf JavaScript is ons begin met die begin script. 62 00:02:58,110 --> 00:03:00,570 En ons het dit sluit met script. 63 00:03:00,570 --> 00:03:03,770 Ons is net gaan om 'n boodskap oor te dra - 64 00:03:03,770 --> 00:03:05,410 Ek sal jou wys - 65 00:03:05,410 --> 00:03:06,500 waarskuwing. 66 00:03:06,500 --> 00:03:11,150 Alert is 'n funksie wat JavaScript gebruik om iets te vertoon. 67 00:03:11,150 --> 00:03:12,400 So laat ons probeer om dit ware vinnig. 68 00:03:12,400 --> 00:03:15,600 69 00:03:15,600 --> 00:03:18,944 Ek gaan om te gaan, wakker hallo. 70 00:03:18,944 --> 00:03:20,400 Wel, ek het vergeet om te sit - 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 So dit is eenvoudig. 74 00:03:26,540 --> 00:03:28,730 >> Ons het JavaScript op 'n webwerf, en dit opgekom. 75 00:03:28,730 --> 00:03:31,200 En dit soort van gebeur net op ons webwerf, reg? 76 00:03:31,200 --> 00:03:33,040 So dit lyk soos dit is nie 'n probleem, reg? 77 00:03:33,040 --> 00:03:34,920 Ek bedoel, hoe kan jy hierdie kwaadwillig? 78 00:03:34,920 --> 00:03:39,930 So die manier waarop hackers doen dit is regtig eenvoudig. 79 00:03:39,930 --> 00:03:40,970 Hulle gaan dit aan te gryp. 80 00:03:40,970 --> 00:03:43,750 Hulle kan hierdie skakel aan u stuur. 81 00:03:43,750 --> 00:03:46,780 As ek hierdie skakel na julle stuur nou, en jy dit oopmaak, gaan dit 82 00:03:46,780 --> 00:03:51,620 sê hallo te sê dat my webwerf is wat jy vertel hallo. 83 00:03:51,620 --> 00:03:57,280 >> En so as ek iets te sê 'n bietjie slimmer, as ek trek 'n 84 00:03:57,280 --> 00:03:59,880 JavaScript-funksie wat ek soort van al geskryf - 85 00:03:59,880 --> 00:04:03,940 Maar as jy kyk na dit, sal ek gaan Oor dit voordat ek dit geskryf het. 86 00:04:03,940 --> 00:04:06,650 So ons gaan 'n timeout te stel. 87 00:04:06,650 --> 00:04:08,450 Ons gaan om te wag vir 'n paar sekondes. 88 00:04:08,450 --> 00:04:13,970 In werklikheid, ons gaan om te wag vir, indien Ek is nie misgis nie, vyf sekondes. 89 00:04:13,970 --> 00:04:15,870 Dit gaan in millisekondes. 90 00:04:15,870 --> 00:04:18,640 En dan wat ons gaan doen, is om ons gaan waarsku dat die aanmelding 91 00:04:18,640 --> 00:04:21,459 uitgetel terug om aan te meld 92 00:04:21,459 --> 00:04:23,990 En ons gaan die plek om te verander na 'n ander plek. 93 00:04:23,990 --> 00:04:30,370 94 00:04:30,370 --> 00:04:32,970 >> So as ek stuur hierdie webwerf aan iemand, hulle gaan wees 95 00:04:32,970 --> 00:04:34,380 op om kalm. 96 00:04:34,380 --> 00:04:35,650 Niks gebeur. 97 00:04:35,650 --> 00:04:38,550 En in vyf sekondes, gaan dit om te sê, jou inskrywing uitgetel. 98 00:04:38,550 --> 00:04:40,200 Meld weer in 99 00:04:40,200 --> 00:04:43,400 Sodra hulle kliek OK, ek gaan om te neem hulle na 'n ander webwerf. 100 00:04:43,400 --> 00:04:45,980 Vermoedelik is die webwerf gaan wees soortgelyk aan die webwerf wat 101 00:04:45,980 --> 00:04:47,280 hulle was voor. 102 00:04:47,280 --> 00:04:50,770 En hulle gaan om aan te meld hul geloofsbriewe in my webwerf plaas van 103 00:04:50,770 --> 00:04:51,850 hul webwerf. 104 00:04:51,850 --> 00:04:54,780 >> En so kan ek mense stuur 'n e-pos met die skakel. 105 00:04:54,780 --> 00:04:56,240 Ek sê, o, hier is 'n skakel. 106 00:04:56,240 --> 00:04:57,290 Dit is 'n bank, byvoorbeeld. 107 00:04:57,290 --> 00:05:01,390 Ek sê, hier, gaan op hierdie skakel. 108 00:05:01,390 --> 00:05:03,730 En nadat hulle dit stuur, hulle is gaan word om op. 109 00:05:03,730 --> 00:05:07,560 Ek kan nie wag vir 15 sekondes, 20 sekondes, en dan pop die teken asseblief terug in 110 00:05:07,560 --> 00:05:08,840 terug teken. 111 00:05:08,840 --> 00:05:10,120 Julle kan probeer om dit met 'n baie meer dinge. 112 00:05:10,120 --> 00:05:13,190 Dit is ingewikkeld omdat jy ouens nie gesien het nie JavaScript, so jy kan 113 00:05:13,190 --> 00:05:14,750 nie weet dat sommige funksies. 114 00:05:14,750 --> 00:05:18,625 Maar al wat jy hoef te doen is om te begin met script, eindig met script. 115 00:05:18,625 --> 00:05:22,105 116 00:05:22,105 --> 00:05:25,510 En jy kan enigiets sit in die middel. 117 00:05:25,510 --> 00:05:27,350 >> Alert is 'n funksie, wag vir. 118 00:05:27,350 --> 00:05:29,365 Venster plek neem jou na 'n nuwe plek. 119 00:05:29,365 --> 00:05:31,370 Maar jy kan soveel meer doen. 120 00:05:31,370 --> 00:05:32,630 En so het die idee is dat ons dat af. 121 00:05:32,630 --> 00:05:39,350 As ek gaan byvoorbeeld twee, en ek sit in dieselfde kode, dit is 122 00:05:39,350 --> 00:05:40,210 gaan nie werk nie. 123 00:05:40,210 --> 00:05:43,620 So dit is die druk om alles uit, want wat hierdie webwerf oorspronklik 124 00:05:43,620 --> 00:05:50,350 doen word as ek iets hier, dit sal druk dit uit hier. 125 00:05:50,350 --> 00:05:52,390 So dit is nie die druk iets uit. 126 00:05:52,390 --> 00:05:55,560 Hierdie voorbeeld is eintlik te keur om te sien of script is daar. 127 00:05:55,560 --> 00:05:57,163 So ja, gaan voort. 128 00:05:57,163 --> 00:05:57,606 Vra my. 129 00:05:57,606 --> 00:05:59,560 >> Publiek: Is dit nie die stuur 'n kry of pos versoek? 130 00:05:59,560 --> 00:06:00,670 >> LUCIANO Arango: Ja. hulle stuur 'n get versoek. 131 00:06:00,670 --> 00:06:01,350 >> Publiek: Dit is? 132 00:06:01,350 --> 00:06:02,490 >> LUCIANO Arango: Ja. 133 00:06:02,490 --> 00:06:04,030 Ook blaaiers gebruik post versoeke. 134 00:06:04,030 --> 00:06:07,470 Maar ek probeer kry versoeke te wys sodat ons kan sien wat 135 00:06:07,470 --> 00:06:10,760 eintlik aan die gang. 136 00:06:10,760 --> 00:06:12,880 En so, as ons kyk na die kode - so dit is nie werk nie. 137 00:06:12,880 --> 00:06:24,870 En as ons 'n blik op die kode, dit gaan wees in byvoorbeeld twee. 138 00:06:24,870 --> 00:06:29,300 Wat hierdie persoon doen, moet die persoon in beheer van die leser - 139 00:06:29,300 --> 00:06:35,370 oop te maak, OK - 140 00:06:35,370 --> 00:06:39,290 is die vervanging van die woord script. 141 00:06:39,290 --> 00:06:42,850 Dit is PHP, wat julle mag het 'n bietjie van gesien het nie. 142 00:06:42,850 --> 00:06:46,250 >> Hy is net die vervanging van die woord script met die naam. 143 00:06:46,250 --> 00:06:50,895 So egter as ek gaan voort en net sit in - 144 00:06:50,895 --> 00:06:58,520 145 00:06:58,520 --> 00:07:02,360 As ek gryp my kode weer, en ek gaan om dit te verander net 'n bietjie. 146 00:07:02,360 --> 00:07:15,010 In plaas van die script, ek gaan om te verander dit script met 'n kapitaal R. En 147 00:07:15,010 --> 00:07:16,390 ons gaan om te sien of hierdie kode werk. 148 00:07:16,390 --> 00:07:19,090 So dit het nie druk dit uit, wat is 'n goeie teken. 149 00:07:19,090 --> 00:07:21,990 En hopelik in twee sekondes, dit gaan opduik. 150 00:07:21,990 --> 00:07:22,820 >> Jou inskrywing uitgetel. 151 00:07:22,820 --> 00:07:23,210 OK. 152 00:07:23,210 --> 00:07:24,460 Dit is alles reg. 153 00:07:24,460 --> 00:07:27,670 So kontrole vir script sou nie noodwendig werk nie. 154 00:07:27,670 --> 00:07:28,130 Die persoon - 155 00:07:28,130 --> 00:07:32,290 dit kan ook gaan vir script hoofletters, script klein, str geval 156 00:07:32,290 --> 00:07:34,180 vergelyk, maak seker dat hulle dieselfde. 157 00:07:34,180 --> 00:07:38,480 Maar die hacker kan nog steeds soort wat doen ons het in Vigenere toe ons verhuis 158 00:07:38,480 --> 00:07:40,620 terug 'n paar karakters, vorentoe beweeg. 159 00:07:40,620 --> 00:07:43,470 En dit kan uitvind hoe om script te sit terug in daar sodat dit kan spuit 160 00:07:43,470 --> 00:07:44,460 dat script. 161 00:07:44,460 --> 00:07:50,370 >> So, wat jy wil gebruik is htmlspecialchars te 162 00:07:50,370 --> 00:07:51,330 Beveilig jou webwerf. 163 00:07:51,330 --> 00:07:56,490 En wat dit beteken is dit maak seker dat dit wat jy sit in - 164 00:07:56,490 --> 00:07:59,610 byvoorbeeld, kwotasies of hierdie groter as of minder is as - 165 00:07:59,610 --> 00:08:04,701 vervang met iets wat sal wees nie - 166 00:08:04,701 --> 00:08:05,951 laat my zoom in hier - 167 00:08:05,951 --> 00:08:08,730 168 00:08:08,730 --> 00:08:09,685 die werklike ampersand. 169 00:08:09,685 --> 00:08:13,420 Dit sal die spesiale HTML vervang karakters wat ons sal sien wanneer ons 170 00:08:13,420 --> 00:08:14,670 praat oor - 171 00:08:14,670 --> 00:08:18,635 172 00:08:18,635 --> 00:08:20,740 O, dit gaan my terug te neem na - 173 00:08:20,740 --> 00:08:24,220 174 00:08:24,220 --> 00:08:25,380 hierdie karakters hier. 175 00:08:25,380 --> 00:08:28,180 >> Hierdie dui dat daar iets kom. 176 00:08:28,180 --> 00:08:31,570 Vir HTML, wat begin bracket vertel ons dat daar iets 177 00:08:31,570 --> 00:08:33,299 HTML verwante kom. 178 00:08:33,299 --> 00:08:33,980 En ons wil om ontslae te raak van daardie. 179 00:08:33,980 --> 00:08:36,200 Ons wil nie HTML te sit in 'n website.k Ons wil nie die gebruiker te wees 180 00:08:36,200 --> 00:08:40,260 staat is om iets te sit in hul webwerf wat kan hul webwerf raak, soos 181 00:08:40,260 --> 00:08:43,480 script of HTML of iets soos dit. 182 00:08:43,480 --> 00:08:53,090 Wat belangrik is, is dat jy ontsmet die toevoer van die gebruiker. 183 00:08:53,090 --> 00:08:54,720 >> So kan die gebruikers insette baie dinge. 184 00:08:54,720 --> 00:08:58,110 Hy kan insette 'n klomp van die dinge te probeer die leser te mislei nog steeds 185 00:08:58,110 --> 00:08:59,410 loop van hierdie script kode. 186 00:08:59,410 --> 00:09:02,870 Wat jy wil doen, is nie net kyk vir script, maar kyk vir alles 187 00:09:02,870 --> 00:09:04,250 dat kwaadwillige kan wees. 188 00:09:04,250 --> 00:09:06,800 En htmlspecialchars sal doen wat vir jou, sodat jy nie het nie 189 00:09:06,800 --> 00:09:07,340 te bekommer nie. 190 00:09:07,340 --> 00:09:12,280 Maar probeer om nie te doen deur jouself soort met jou eie kode. 191 00:09:12,280 --> 00:09:14,055 Is almal duidelik XSS? 192 00:09:14,055 --> 00:09:14,370 >> OK. 193 00:09:14,370 --> 00:09:16,355 Kom ons gaan na SQL-inspuiting. 194 00:09:16,355 --> 00:09:21,010 So SQL-inspuiting is waarskynlik die nommer een kwesbaarheid 195 00:09:21,010 --> 00:09:22,490 in verskillende webtuistes. 196 00:09:22,490 --> 00:09:24,350 Ek bedoel, 'n goeie voorbeeld - 197 00:09:24,350 --> 00:09:27,350 Ek was net navorsing verste vir hierdie ding. 198 00:09:27,350 --> 00:09:34,430 En ek het gevind dat hierdie awesome artikel, waar Ek het gesien dat Harvard is oortree, 199 00:09:34,430 --> 00:09:35,390 was gekap. 200 00:09:35,390 --> 00:09:37,370 En ek het gewonder, goed, hoe sou hulle dit doen? 201 00:09:37,370 --> 00:09:41,660 Harvard is die mees awesome, die meeste verseker universiteit ooit. 202 00:09:41,660 --> 00:09:43,850 Reg? 203 00:09:43,850 --> 00:09:45,410 Wel, die bedieners te verbreek, die hackers gebruik om 'n 204 00:09:45,410 --> 00:09:47,710 tegniek genoem SQL-inspuiting. 205 00:09:47,710 --> 00:09:50,250 >> So dit gebeur op 'n dag-tot-dag basis. 206 00:09:50,250 --> 00:09:53,590 Mense vergeet ag te neem vir SQL-inspuiting. 207 00:09:53,590 --> 00:09:54,930 Harvard doen. 208 00:09:54,930 --> 00:10:00,050 Ek dink dit sê hier, Princeton, Stanford, Cornell. 209 00:10:00,050 --> 00:10:03,550 So hoe weet ons - so wat is die SQL inspuiting wat bring al hierdie 210 00:10:03,550 --> 00:10:05,668 mense af? 211 00:10:05,668 --> 00:10:08,010 OK. 212 00:10:08,010 --> 00:10:12,090 So SQL is 'n programmeertaal wat gebruik ons ​​databasisse om toegang te verkry. 213 00:10:12,090 --> 00:10:14,560 Wat ons doen is ons kies - 214 00:10:14,560 --> 00:10:18,510 So, wat hierdie lees nou is kies alles van die tafel. 215 00:10:18,510 --> 00:10:22,640 >> SQL, verander dit in hierdie databasisse wat tafels vol inligting. 216 00:10:22,640 --> 00:10:26,550 So kies alles van gebruikers waar die naam is gebruikersnaam. 217 00:10:26,550 --> 00:10:28,120 Reg? 218 00:10:28,120 --> 00:10:30,770 Eenvoudig genoeg. 219 00:10:30,770 --> 00:10:34,490 Die idee van die SQL-inspuiting is dat ons voeg 'n paar kwaadwillige kode wat sou 220 00:10:34,490 --> 00:10:37,270 mislei die bediener in hardloop iets anders as wat dit 221 00:10:37,270 --> 00:10:38,430 oorspronklik hardloop. 222 00:10:38,430 --> 00:10:44,970 So kom ons sê vir gebruikersnaam, ons sit in of 1 is gelyk aan 1. 223 00:10:44,970 --> 00:10:46,700 So het ons in of 1 is gelyk aan 1. 224 00:10:46,700 --> 00:10:49,890 Die manier waarop dit sal nou lees, sal kies wees van die gebruikers, alles van 225 00:10:49,890 --> 00:10:51,360 gebruikers - dit is alles - 226 00:10:51,360 --> 00:10:55,880 waar naam is rekening, maar gebruikersnaam is of 1 is gelyk aan 1. 227 00:10:55,880 --> 00:11:01,760 >> So naam is niks of 1 is gelyk aan 1. 228 00:11:01,760 --> 00:11:04,060 1 is gelyk aan 1 is altyd waar. 229 00:11:04,060 --> 00:11:07,690 So dit sal altyd inligting terug van die gebruikers. 230 00:11:07,690 --> 00:11:08,100 OK. 231 00:11:08,100 --> 00:11:10,030 Ons hoef nie te hê die regte gebruikersnaam. 232 00:11:10,030 --> 00:11:14,240 Ons kan net iets wat ons wil hê, en dit sal inligting terug 233 00:11:14,240 --> 00:11:15,690 wat ons nodig het. 234 00:11:15,690 --> 00:11:17,160 Kom ons kyk na nog 'n voorbeeld. 235 00:11:17,160 --> 00:11:22,720 >> As ons kies om alles van die gebruiker, waar naam is DROP TABLE gebruikers - 236 00:11:22,720 --> 00:11:26,420 So, wat dink jy wil doen as ek in die rekening 237 00:11:26,420 --> 00:11:29,560 as DROP TABLE gebruikers? 238 00:11:29,560 --> 00:11:30,230 Enigiemand het 'n idee? 239 00:11:30,230 --> 00:11:31,050 Ja. 240 00:11:31,050 --> 00:11:32,470 >> Publiek: Dit gaan vertel dit al die tafels te stort. 241 00:11:32,470 --> 00:11:35,460 >> LUCIANO Arango: Dit gaan om ons te vertel alles in die webwerf te stort, 242 00:11:35,460 --> 00:11:38,290 alles in die databasis. 243 00:11:38,290 --> 00:11:41,910 En wat die mense gebruik vir - so Ek gaan om te wys julle. 244 00:11:41,910 --> 00:11:45,462 Ek afgeskakel die weglating van die tafels want ek wil nie hê jy 245 00:11:45,462 --> 00:11:48,240 ouens my tabelle te verwyder nie. 246 00:11:48,240 --> 00:11:49,850 Kom ons neem 'n blik op hierdie. 247 00:11:49,850 --> 00:11:54,410 So dit trek eenvoudig die inligting vir 'n sekere persoon. 248 00:11:54,410 --> 00:11:57,550 So hoe weet ons as dit geraak word deur SQL-inspuiting. 249 00:11:57,550 --> 00:12:01,545 Ons gaan regtig vinnig om te kyk As ons iets kan sit - 250 00:12:01,545 --> 00:12:04,990 251 00:12:04,990 --> 00:12:06,080 Laat my hierdie kode. 252 00:12:06,080 --> 00:12:08,140 Ek gaan om te gaan oor dit in 'n tweede. 253 00:12:08,140 --> 00:12:12,210 Ek gaan om wortel te sit en 1 is gelyk aan 1. 254 00:12:12,210 --> 00:12:15,510 >> Hierdie reg hier, hierdie persent teken 23 - 255 00:12:15,510 --> 00:12:19,970 wat dit regtig is, as ek kyk reg hier by - 256 00:12:19,970 --> 00:12:23,820 die manier HTML neem in getalle, as jy 'n blik op wanneer ek sit in 'n ruimte 257 00:12:23,820 --> 00:12:28,380 hier - as ek na die ruimte om iets Hier is dit verander dit na 'n persent 2. 258 00:12:28,380 --> 00:12:31,420 Moenie julle sien dit hier toe ek sit in 'n ruimte? 259 00:12:31,420 --> 00:12:36,710 Die manier waarop dit werk, is dat jy kan net stuur ASCII waardes HTML. 260 00:12:36,710 --> 00:12:40,330 So dit vervang, byvoorbeeld, 'n ruimte met 20 persent. 261 00:12:40,330 --> 00:12:41,970 Ek weet nie of julle het gesien dat voor. 262 00:12:41,970 --> 00:12:45,100 >> Dit vervang 'n hashtag met persent 23. 263 00:12:45,100 --> 00:12:50,840 Ons moet 'n hashtag aan die einde van of stelling sodat ons kan vertel van die 264 00:12:50,840 --> 00:13:00,885 databasis te vergeet om kommentaar te lewer uit hierdie laaste kommapunt aan die einde. 265 00:13:00,885 --> 00:13:03,060 Ons wil dit nie dink nie. 266 00:13:03,060 --> 00:13:05,980 Ons wil net dit alles te hardloop dat ons vooraf en 267 00:13:05,980 --> 00:13:07,450 kommentaar wat uit. 268 00:13:07,450 --> 00:13:08,710 Kom ons neem 'n blik op dit. 269 00:13:08,710 --> 00:13:14,670 >> So as ek iets verkeerd te sit - Kom ons sê byvoorbeeld, ek het 2 gelykes 270 00:13:14,670 --> 00:13:15,690 1, beteken dit nie my niks te gee. 271 00:13:15,690 --> 00:13:22,930 Toe ek in 1 is gelyk aan 1, en dit nie terug iets, dit vertel my dat 272 00:13:22,930 --> 00:13:24,660 dit is kwesbaar vir 'n SQL-inspuiting. 273 00:13:24,660 --> 00:13:29,090 Ek weet nou dat alles wat Ek sit nadat dit - 274 00:13:29,090 --> 00:13:39,110 en byvoorbeeld, laat val TABELLE of iets soos dit 275 00:13:39,110 --> 00:13:41,190 sal beslis werk. 276 00:13:41,190 --> 00:13:44,350 Ek weet dit is kwesbaar vir SQL-inspuiting want ek weet dat 277 00:13:44,350 --> 00:13:49,850 onder die enjinkap, is dit te laat my doen die 1 is gelyk aan 1 ding. 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 >> En as ons kyk na die ander kinders, nommer twee en nommer drie, is dit 281 00:13:56,540 --> 00:13:59,110 gaan 'n bietjie meer te doen van kontrole onder die 282 00:13:59,110 --> 00:14:03,680 kap van wat dit is. 283 00:14:03,680 --> 00:14:07,425 So iemand in staat stel om die daling nog niks of probeer? 284 00:14:07,425 --> 00:14:08,760 Het jy ouens soort van kry SQL nog? 285 00:14:08,760 --> 00:14:10,430 Want ek weet julle het nie dit gesien het nie, so dit is soort van 286 00:14:10,430 --> 00:14:11,759 verwarrend vir julle. 287 00:14:11,759 --> 00:14:16,160 288 00:14:16,160 --> 00:14:18,480 Kom ons neem 'n blik. 289 00:14:18,480 --> 00:14:21,270 So, wat is die manier waarop SQLI te voorkom? 290 00:14:21,270 --> 00:14:21,390 OK. 291 00:14:21,390 --> 00:14:23,330 So, dit is werklik belangrik, want jy ouens beslis wil om te verhoed dat 292 00:14:23,330 --> 00:14:24,090 dit in jou webtuistes. 293 00:14:24,090 --> 00:14:28,040 >> Indien nie, word al jou vriende gaan maak pret van julle wanneer hulle vervolg alles 294 00:14:28,040 --> 00:14:29,390 jou tafels. 295 00:14:29,390 --> 00:14:36,150 Dus is die idee is dat jy die SQL herstel in 'n sekere manier, terwyl jy ooreenstem met 296 00:14:36,150 --> 00:14:41,940 wat die gebruiker insette met 'n sekere string. 297 00:14:41,940 --> 00:14:46,120 So die manier waarop dit werk, is jy voor te berei om die databasis. 298 00:14:46,120 --> 00:14:50,830 Jy kies naam, kleur, en kalorieë van 'n databasis met die naam vrugte. 299 00:14:50,830 --> 00:14:53,580 En dan waar kalorieë minder as, en ons het 'n vraagteken daar 300 00:14:53,580 --> 00:14:56,530 sê ons gaan insette iets in 'n tweede. 301 00:14:56,530 --> 00:14:58,850 >> En kleur gelyk, en ons het 'n vraag merk en gesê ons gaan 302 00:14:58,850 --> 00:15:00,913 insette iets in 'n sekonde. 303 00:15:00,913 --> 00:15:02,660 OK? 304 00:15:02,660 --> 00:15:09,920 En dan het ons dit uit te voer, om in 150 en rooi. 305 00:15:09,920 --> 00:15:12,820 En dit sal seker te maak seker te maak dat hierdie twee - 306 00:15:12,820 --> 00:15:15,300 hierdie verskeidenheid sal seker maak dat hierdie twee is 'n heelgetal en 307 00:15:15,300 --> 00:15:16,550 dat dit 'n string. 308 00:15:16,550 --> 00:15:18,810 309 00:15:18,810 --> 00:15:20,890 Dan gaan ons, en ons gaan haal al het ons sit dit in rooi. 310 00:15:20,890 --> 00:15:21,964 Dit beteken dat ons gaan haal nie. 311 00:15:21,964 --> 00:15:26,790 Dit beteken dat ons eintlik die SQL voer verklaring en sit dit terug in die rooi. 312 00:15:26,790 --> 00:15:30,530 Hier het ons dieselfde, maar ons doen dieselfde vir geel. 313 00:15:30,530 --> 00:15:32,490 En ons gaan haal nie. 314 00:15:32,490 --> 00:15:36,140 >> En op hierdie manier, ons verhoed dat die gebruiker in staat is om te insette iets 315 00:15:36,140 --> 00:15:41,710 dit is nie wat ons verskaf, 'n string of 'n heelgetal is, byvoorbeeld. 316 00:15:41,710 --> 00:15:45,100 317 00:15:45,100 --> 00:15:46,610 Ek was in gesprek vroeër oor vertrou op die ander. 318 00:15:46,610 --> 00:15:50,010 Wanneer julle begin jou projek, is jy beslis gaan gebruik 319 00:15:50,010 --> 00:15:52,310 opstart of iets soortgelyks. 320 00:15:52,310 --> 00:15:53,490 Het jy al ooit ouens Wordpress gebruik? 321 00:15:53,490 --> 00:15:57,170 Waarskynlik julle ouens gebruik het om Wordpress waarskynlik. 322 00:15:57,170 --> 00:16:00,050 So die probleem met die gebruik ander mense se dinge - 323 00:16:00,050 --> 00:16:05,940 Ek gaan net na Google ware vinnige Wordpress kwesbaarheid. 324 00:16:05,940 --> 00:16:07,495 >> As ek trek dit op die oomblik - 325 00:16:07,495 --> 00:16:08,995 Ek het letterlik het 'n twee tweede Google. 326 00:16:08,995 --> 00:16:12,300 327 00:16:12,300 --> 00:16:13,800 Ons kan sien dat Wordpress - 328 00:16:13,800 --> 00:16:17,450 hierdie is gedateer as September '12. 329 00:16:17,450 --> 00:16:19,120 26 word opgedateer. 330 00:16:19,120 --> 00:16:23,620 Die standaard opset van Wordpress voordat 3.6 nie verhoed dat hierdie 331 00:16:23,620 --> 00:16:27,110 sekere oplaai, wat dalk maak dit makliker vir 332 00:16:27,110 --> 00:16:29,790 kruis-site scripting aanvalle. 333 00:16:29,790 --> 00:16:34,530 So 'n vinnige storie, een keer was ons werk met - so ek was, in die somer, werk 'n 334 00:16:34,530 --> 00:16:34,970 internskap. 335 00:16:34,970 --> 00:16:40,400 En ons werk met soort soos 'n groot kredietkaart maatskappy. 336 00:16:40,400 --> 00:16:42,020 >> En hulle staatmaak op iets genoem - 337 00:16:42,020 --> 00:16:45,740 Ek weet nie of julle al ooit gespeel met 'n produk, genaamd Joomla. 338 00:16:45,740 --> 00:16:51,750 Joomla is 'n produk wat gebruik word om te beheer - soort van soortgelyk aan 339 00:16:51,750 --> 00:16:54,340 Wordpress, gebruik word om webtuistes te bou. 340 00:16:54,340 --> 00:16:56,060 So het hulle hul webwerf werk op Joomla. 341 00:16:56,060 --> 00:16:59,290 Dit is eintlik 'n kredietkaart maatskappy in Colombia. 342 00:16:59,290 --> 00:17:01,000 Ek sal jou neem na hul webwerf ware vinnig. 343 00:17:01,000 --> 00:17:04,550 344 00:17:04,550 --> 00:17:05,400 >> So het hulle gebruik Joomla. 345 00:17:05,400 --> 00:17:08,630 En hulle nie opgedateer het Joomla tot die nuutste toevoeging. 346 00:17:08,630 --> 00:17:12,160 En so toe ons neem 'n blik op hulle kode, ons was in staat om werklik 347 00:17:12,160 --> 00:17:18,430 gaan binne hulle kode en steel al die kredietkaart inligting wat hulle gehad het, 348 00:17:18,430 --> 00:17:21,670 al die kredietkaart nommers, die name, adresse. 349 00:17:21,670 --> 00:17:22,740 En dit was net - 350 00:17:22,740 --> 00:17:23,569 en hulle kode is heeltemal fyn. 351 00:17:23,569 --> 00:17:24,710 Hulle het 'n groot-kode. 352 00:17:24,710 --> 00:17:25,389 Dit was al sekuriteit. 353 00:17:25,389 --> 00:17:26,520 Hulle nagegaan al die databasisse. 354 00:17:26,520 --> 00:17:29,020 Hulle het seker gemaak dat cross-site script was fine. 355 00:17:29,020 --> 00:17:34,390 >> Maar hulle gebruik iets wat nie opgedateer, dit was nie veilig is. 356 00:17:34,390 --> 00:17:36,940 En sodat hulle gelei het na - sodat jy ouens gaan beslis ander te gebruik 357 00:17:36,940 --> 00:17:40,650 mense se kode, ander mense se raamwerke op te bou om jou webwerf. 358 00:17:40,650 --> 00:17:43,860 Maak seker dat hulle veilig omdat soms is dit nie jy nie, die een wat 359 00:17:43,860 --> 00:17:44,480 'n fout maak. 360 00:17:44,480 --> 00:17:47,440 Maar iemand anders 'n fout maak, en dan moet jy val as gevolg van daardie. 361 00:17:47,440 --> 00:17:51,190 362 00:17:51,190 --> 00:17:53,885 >> Wagwoorde en PII. 363 00:17:53,885 --> 00:17:56,820 So wagwoorde. 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 Kom ons neem 'n blik op wagwoorde ware vinnig. 367 00:18:04,230 --> 00:18:04,590 OK. 368 00:18:04,590 --> 00:18:06,520 Asseblief vir my sê dat almal gebruik veilige - 369 00:18:06,520 --> 00:18:09,030 Ek hoop almal hier gebruik veilige wagwoorde. 370 00:18:09,030 --> 00:18:12,890 Ek is net te laat dat in as 'n aanname. 371 00:18:12,890 --> 00:18:14,850 So julle ouens gaan beslis te stoor wagwoorde vir jou webtuistes. 372 00:18:14,850 --> 00:18:17,440 Jy gaan iets soos te maak 'n aanteken of iets soos dit. 373 00:18:17,440 --> 00:18:19,610 Wat belangrik is, is om nie te stoor wagwoorde in plain text. 374 00:18:19,610 --> 00:18:20,860 Dit is uiters belangrik. 375 00:18:20,860 --> 00:18:23,960 Jy wil nie op te slaan 'n wagwoord in gewone teks. 376 00:18:23,960 --> 00:18:27,370 >> En jy beslis wil regtig nie dit in 'n een manier hash te stoor. 377 00:18:27,370 --> 00:18:32,440 So, wat 'n een manier hash is dat wanneer jy genereer 'n woord, wanneer jy hierdie 378 00:18:32,440 --> 00:18:36,200 woord in 'n hash funksie, sal dit genereer terug 'n soort van kriptiese 379 00:18:36,200 --> 00:18:39,390 boodskap of kriptiese stel sleutels. 380 00:18:39,390 --> 00:18:40,640 Ek sal jou 'n voorbeeld wys. 381 00:18:40,640 --> 00:18:44,620 382 00:18:44,620 --> 00:18:50,250 Ek gaan hulle woord password1 om hash. 383 00:18:50,250 --> 00:18:55,280 So md5 Hash gaan my om terug te keer 'n soort van vreemde inligting. 384 00:18:55,280 --> 00:18:59,140 >> Die probleem is dat mense daar buite wat daarvan hou om te gaan in webtuistes het 385 00:18:59,140 --> 00:19:02,750 reeds uitgepluis soort van al die MD5 hashes. 386 00:19:02,750 --> 00:19:06,030 Wat hulle gedoen het, is hulle gaan sit op hul rekenaars, en hulle hashed elke 387 00:19:06,030 --> 00:19:09,660 enkele moontlike woord daar uit totdat hulle het soort van wat dit is. 388 00:19:09,660 --> 00:19:11,420 As ek dit op te soek - 389 00:19:11,420 --> 00:19:12,420 Ek het net gegryp die hash. 390 00:19:12,420 --> 00:19:14,120 As ek hierdie gemors uit - 391 00:19:14,120 --> 00:19:17,470 As ek gaan in 'n webwerf, en ek vind hierdie gemors, want ek kry die 392 00:19:17,470 --> 00:19:24,100 databasisse, en ek sien dit op, iemand reeds gedink dit uit vir my. 393 00:19:24,100 --> 00:19:28,600 394 00:19:28,600 --> 00:19:29,100 >> Ja. 395 00:19:29,100 --> 00:19:35,030 So mense gaan sit het, en wat ook al md5 hash dat jy in, gaan hulle 396 00:19:35,030 --> 00:19:37,760 terug te keer na jou iets Dit is 'n woord. 397 00:19:37,760 --> 00:19:39,800 As ek hash 'n ander woord, soos - 398 00:19:39,800 --> 00:19:42,410 Ek weet nie - 399 00:19:42,410 --> 00:19:43,490 trees2. 400 00:19:43,490 --> 00:19:46,050 Ek wil nie teleurgesteld wees deur my Google-soektogte. 401 00:19:46,050 --> 00:19:49,820 402 00:19:49,820 --> 00:19:52,780 Daar is dit, trees2. 403 00:19:52,780 --> 00:19:55,930 So 'n baie van die webwerwe nog steeds gebruik MD5 hash. 404 00:19:55,930 --> 00:19:57,730 Hulle sê, o, dit is veilig. 405 00:19:57,730 --> 00:19:58,570 Ons is nie stoor in plain text. 406 00:19:58,570 --> 00:19:59,740 Ons het hierdie md5 hash. 407 00:19:59,740 --> 00:20:01,880 En al wat ek hoef te doen is net Google die getal. 408 00:20:01,880 --> 00:20:03,940 >> Ek het nie eens myself te bereken. 409 00:20:03,940 --> 00:20:06,790 Ek kan net vir Google dit, en iemand reeds dit gedoen het vir my. 410 00:20:06,790 --> 00:20:08,010 Hier is 'n klomp van hulle. 411 00:20:08,010 --> 00:20:09,260 Hier is 'n klomp van die wagwoorde. 412 00:20:09,260 --> 00:20:13,890 413 00:20:13,890 --> 00:20:18,680 So beslis nie gebruik nie md5 hash, want al wat jy hoef te 414 00:20:18,680 --> 00:20:19,140 doen, is Google dit. 415 00:20:19,140 --> 00:20:20,390 So, wat wil jy gebruik in plaas? 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 Iets genoem sout. 419 00:20:31,260 --> 00:20:32,460 So, wat sout is - 420 00:20:32,460 --> 00:20:36,280 julle onthou toe ons praat oor ewekansige in - 421 00:20:36,280 --> 00:20:37,920 Ek is nie seker wat pset dit was - 422 00:20:37,920 --> 00:20:41,140 was dit pset daar of vier? 423 00:20:41,140 --> 00:20:45,150 >> Ons praat oor die vind van die naald in die hooimied. 424 00:20:45,150 --> 00:20:48,480 En in die pset, is dit gesê dat jy kan eintlik uit te vind wat lukraak 425 00:20:48,480 --> 00:20:51,840 genereer omdat iemand reeds gehardloop ewekansige 'n miljoen keer en net 426 00:20:51,840 --> 00:20:53,230 soort van gevorm wat hulle genereer. 427 00:20:53,230 --> 00:20:55,840 Wat jy wil doen, is sit in 'n invoer. 428 00:20:55,840 --> 00:20:57,130 So dit is wat sout soort is. 429 00:20:57,130 --> 00:21:00,900 Hulle het reeds uitgepluis het wat sout opbrengste vir elke werk. 430 00:21:00,900 --> 00:21:04,750 >> So, wat sout doen, is jy sit in 'n sout. 431 00:21:04,750 --> 00:21:06,160 Jy sit in 'n sekere woord. 432 00:21:06,160 --> 00:21:09,720 En dit sal die woord hash afhangende op wat jy sit in hier. 433 00:21:09,720 --> 00:21:13,570 So as ek hash wagwoord een met hierdie sin, dit gaan om hash 434 00:21:13,570 --> 00:21:17,180 anders as ek hash password1 met 'n ander sin. 435 00:21:17,180 --> 00:21:21,670 Dit gee dit soort van iewers te begin vir die hashing te begin. 436 00:21:21,670 --> 00:21:25,970 So dit is 'n baie moeiliker om te bereken nie, maar jy kan nog steeds bereken nie, veral 437 00:21:25,970 --> 00:21:26,830 as jy 'n slegte sout. 438 00:21:26,830 --> 00:21:29,650 >> Mense het reeds ook uitgepluis algemene soute en uitgepluis 439 00:21:29,650 --> 00:21:31,500 wat dit is. 440 00:21:31,500 --> 00:21:34,980 Ewekansige soute is baie beter, maar die beste manier is om te gebruik 441 00:21:34,980 --> 00:21:38,160 iets genoem grafkelder. 442 00:21:38,160 --> 00:21:40,480 En wat grafkelder kan jy nie - so hierdie funksies 443 00:21:40,480 --> 00:21:41,820 reeds gebou vir jou. 444 00:21:41,820 --> 00:21:44,910 Baie mense vergeet dat, of hulle vergeet om dit te gebruik. 445 00:21:44,910 --> 00:21:54,520 Maar as ek opkyk grafkelder PHP, grafkelder reeds terug 'n gemors string vir my. 446 00:21:54,520 --> 00:21:58,790 En dit eintlik soute dit baie keer en hashes dit baie keer. 447 00:21:58,790 --> 00:22:00,070 >> So ons het nie om dit te doen. 448 00:22:00,070 --> 00:22:04,790 So al wat jy hoef te doen, is stuur dit in grafkelder. 449 00:22:04,790 --> 00:22:08,170 En dit sal 'n groot gemors skep sonder jy hoef te bekommer oor die sout 450 00:22:08,170 --> 00:22:08,990 of iets nie. 451 00:22:08,990 --> 00:22:12,000 Want as jy was om te sout nie, het jy om te onthou wat sout wat jy gebruik 452 00:22:12,000 --> 00:22:13,800 want indien nie, kan jy nie jou wagwoord terug sonder die 453 00:22:13,800 --> 00:22:15,760 sout wat jy gebruik het. 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 >> En ook persoonlike identifiseerbare inligting. 457 00:22:23,150 --> 00:22:26,730 So sosiale sekerheid, kredietkaart - dit is redelik voor die hand liggend. 458 00:22:26,730 --> 00:22:31,880 Maar soms mense vergeet van die manier waarop dit werke is, hoeveel inligting jy 459 00:22:31,880 --> 00:22:35,690 eintlik moet 'n paar een persoon te vind? 460 00:22:35,690 --> 00:22:37,740 Iemand het 'n studie oor dit 'n pad terug. 461 00:22:37,740 --> 00:22:40,870 En dit was soos, as jy ' 'n volle naam, kan jy nie vind 462 00:22:40,870 --> 00:22:41,610 iemand wat maklik. 463 00:22:41,610 --> 00:22:43,900 Maar wat as jy 'n volle naam en die datum van geboorte? 464 00:22:43,900 --> 00:22:47,770 Is dit genoeg om te identifiseer iemand spesifiek? 465 00:22:47,770 --> 00:22:52,760 >> Wat as jy hulle naam en die straat adres dat hulle leef? 466 00:22:52,760 --> 00:22:55,110 Is dit genoeg om iemand te vind? 467 00:22:55,110 --> 00:23:02,490 En dis toe dat hulle die vraag, wat is persoonlike inligting, en 468 00:23:02,490 --> 00:23:05,360 wat moet jy bekommerd wees oor nie om weg te gee? 469 00:23:05,360 --> 00:23:08,770 As jy weggee persoonlike identifiseerbare inligting wat iemand wat jy gee, 470 00:23:08,770 --> 00:23:11,420 jy kan potensieel gedagvaar kry. 471 00:23:11,420 --> 00:23:12,610 En ons wil beslis nie doen nie. 472 00:23:12,610 --> 00:23:14,955 >> So wanneer jy sit jou webwerf , en jy het 'n baie cool 473 00:23:14,955 --> 00:23:17,230 ontwerp, hopelik gemaak 'n awesome finale projek. 474 00:23:17,230 --> 00:23:18,370 Enige jy soort van wil sit dit daar buite. 475 00:23:18,370 --> 00:23:21,420 Jy wil om seker te maak dat alles wat jy neem van die gebruiker, al is dit 476 00:23:21,420 --> 00:23:25,310 persoonlike inligting, wat jy wil om seker te maak jy word regtig 477 00:23:25,310 --> 00:23:26,560 versigtig met dit. 478 00:23:26,560 --> 00:23:29,670 479 00:23:29,670 --> 00:23:31,080 >> Shell inspuiting. 480 00:23:31,080 --> 00:23:31,350 OK. 481 00:23:31,350 --> 00:23:37,590 Shell inspuiting toelaat om die indringer te toegang kry tot jou werklike command line 482 00:23:37,590 --> 00:23:39,660 in jou bediener. 483 00:23:39,660 --> 00:23:44,060 En so het hy in staat is om kode uit te voer wat jy nie kan beheer nie. 484 00:23:44,060 --> 00:23:49,560 Kom ons neem 'n voorbeeld van hierdie pragtige string reg hier. 485 00:23:49,560 --> 00:23:55,570 As ons gaan in die webwerf weer, ek is gaan om te gaan in die kode inspuiting. 486 00:23:55,570 --> 00:23:58,910 So, wat dit beteken is - 487 00:23:58,910 --> 00:24:00,420 dit is ook wat ons was kyk na voor. 488 00:24:00,420 --> 00:24:11,200 Ons die gebruiker sit in alles wat jy laat hy wil, en dit sal druk 489 00:24:11,200 --> 00:24:12,220 alles wat jy wil. 490 00:24:12,220 --> 00:24:13,890 >> So ek gaan 'n oproep te maak. 491 00:24:13,890 --> 00:24:15,540 Wat dit beteken is - 492 00:24:15,540 --> 00:24:16,940 dit sal begin deur concatenating. 493 00:24:16,940 --> 00:24:19,520 So sal dit laat my loop alles beveel die persoon se loop 494 00:24:19,520 --> 00:24:21,500 voor en my opdrag. 495 00:24:21,500 --> 00:24:23,980 En ek hardloop 'n stelsel opdrag. 496 00:24:23,980 --> 00:24:27,310 En hierdie laaste snare is - onthou wat ek gepraat met julle oor, 497 00:24:27,310 --> 00:24:31,725 terwyl jy het om te enkodeer dit in 'n URL-metode. 498 00:24:31,725 --> 00:24:35,010 499 00:24:35,010 --> 00:24:36,992 As ek loop dit nou - 500 00:24:36,992 --> 00:24:39,150 Ek sal jou wys hier oor - 501 00:24:39,150 --> 00:24:41,100 Jy sal sien dat ek geëindig up hardloop 'n opdrag. 502 00:24:41,100 --> 00:24:45,700 503 00:24:45,700 --> 00:24:49,320 >> Dit is eintlik die werklike bediener dat my webwerf word uitgevoer. 504 00:24:49,320 --> 00:24:55,840 505 00:24:55,840 --> 00:24:58,510 So wil ons nie doen nie, want ek kan hardloop - 506 00:24:58,510 --> 00:25:00,320 Hierdie bediener is nie myne nie. 507 00:25:00,320 --> 00:25:04,030 So ek wil nie gemors sy suster, Marcus se bediener. 508 00:25:04,030 --> 00:25:07,470 Maar jy kan meer instruksies hardloop wat gevaarlik is. 509 00:25:07,470 --> 00:25:11,885 En potensieel, kan jy dit verwyder lêers, verwyder dopgehou. 510 00:25:11,885 --> 00:25:14,390 511 00:25:14,390 --> 00:25:17,970 Ek kan 'n sekere Gids indien verwyder Ek wou nie, maar ek wil nie 512 00:25:17,970 --> 00:25:19,530 wat om te doen om Marcus. 513 00:25:19,530 --> 00:25:20,420 Hy is 'n mooi man. 514 00:25:20,420 --> 00:25:21,470 Hy laat my leen sy bediener. 515 00:25:21,470 --> 00:25:24,620 So ek gaan om hom te laat af op die goeie een. 516 00:25:24,620 --> 00:25:32,280 >> So wat ons wil nie te gebruik nie - ons doen nie wil eval of stelsel te gebruik. 517 00:25:32,280 --> 00:25:34,755 Eval of stelsel stel ons in staat om te maak hierdie stelsel oproepe. 518 00:25:34,755 --> 00:25:37,410 519 00:25:37,410 --> 00:25:38,410 Eval middel evalueer. 520 00:25:38,410 --> 00:25:40,790 Stelsel beteken wat ek het. 521 00:25:40,790 --> 00:25:42,490 Dit loop iets in die stelsel. 522 00:25:42,490 --> 00:25:46,730 Maar ons kan hierdie dinge verbied in PHP sodat ons dit nie gebruik nie. 523 00:25:46,730 --> 00:25:47,400 En oplaai. 524 00:25:47,400 --> 00:25:49,180 Ek gaan 'n awesome om te doen ding met die oplaai. 525 00:25:49,180 --> 00:25:52,740 Maar soos ek gesê julle, my lêer oplaai ding is nie werk nie. 526 00:25:52,740 --> 00:25:54,590 As ek nou 'n lêer te laai - 527 00:25:54,590 --> 00:25:57,120 528 00:25:57,120 --> 00:26:00,830 As ek 'n lêer op te laai, en dit is 'n foto - 529 00:26:00,830 --> 00:26:03,180 jy het 'n oplaai ding dit is 'n prentjie. 530 00:26:03,180 --> 00:26:03,660 Dit is fyn. 531 00:26:03,660 --> 00:26:04,280 Niks gebeur nie. 532 00:26:04,280 --> 00:26:10,840 >> Maar as jy 'n oplaai lêer, vir Byvoorbeeld, en die gebruiker eintlik oplaai 533 00:26:10,840 --> 00:26:19,220 'n PHP-lêer of 'n exe-lêer of iets soos wat, dan kan jy potensieel 534 00:26:19,220 --> 00:26:19,740 het 'n probleem. 535 00:26:19,740 --> 00:26:21,390 Dit was voor die werk. 536 00:26:21,390 --> 00:26:25,202 Ongelukkig vir my is dit ' nie werk nie. 537 00:26:25,202 --> 00:26:30,230 As ek, byvoorbeeld, laai hierdie lêer, Ek is kry nie toestemming om op te laai 538 00:26:30,230 --> 00:26:33,400 die lêer as gevolg van die bediener nie myne nie. 539 00:26:33,400 --> 00:26:38,670 So het die man is baie slim. 540 00:26:38,670 --> 00:26:39,610 >> So ons wil nie - 541 00:26:39,610 --> 00:26:40,130 Ek gaan julle te wys - 542 00:26:40,130 --> 00:26:41,840 OK, hierdie is 'n paar regtig cool tools. 543 00:26:41,840 --> 00:26:45,100 So hierdie - 544 00:26:45,100 --> 00:26:47,715 gaan in - as jy ouens het Firefox - Hopelik sal jy doen. 545 00:26:47,715 --> 00:26:54,260 Daar is twee add-ons genoem SQL Inject My en cross-site Script Me. 546 00:26:54,260 --> 00:26:56,870 Hulle maak so min kant bars aan die kant. 547 00:26:56,870 --> 00:27:01,480 En as ek was om te gaan na CS60 byvoorbeeld - 548 00:27:01,480 --> 00:27:04,210 So, wat beteken dit is wat dit lyk vir al die vorms wat - 549 00:27:04,210 --> 00:27:07,220 550 00:27:07,220 --> 00:27:08,760 Hopelik sal ek nie in die moeilikheid vir hierdie. 551 00:27:08,760 --> 00:27:09,190 >> Maar OK. 552 00:27:09,190 --> 00:27:12,600 Hier is die pen stelsel. 553 00:27:12,600 --> 00:27:18,946 So toe ek begin soek na gate in die stelsel, die eerste ding wat ek doen, is om 554 00:27:18,946 --> 00:27:21,820 oop te maak hierdie pragtige klein instrument op die kant. 555 00:27:21,820 --> 00:27:24,160 En ek gaan vorms te toets met outomatiese aanvalle. 556 00:27:24,160 --> 00:27:28,510 En ja, wat dit doen is dit stadig maak 'n klomp van die blaaiers. 557 00:27:28,510 --> 00:27:29,930 Hier is 'n klomp van die blaaiers. 558 00:27:29,930 --> 00:27:33,320 En dit is probeer elke enkele kombinasie van die kruis-site scripting 559 00:27:33,320 --> 00:27:37,380 dat daar moontlik is, indien wat jy sien op die kant. 560 00:27:37,380 --> 00:27:42,080 >> En dit sal my 'n gevolg soort van wat die antwoord is. 561 00:27:42,080 --> 00:27:42,860 Alle slaag. 562 00:27:42,860 --> 00:27:43,910 Dit is duidelik dat hulle almal slaag. 563 00:27:43,910 --> 00:27:46,190 Ek bedoel, hulle is regtig slim mense daar. 564 00:27:46,190 --> 00:27:48,010 Maar as ek was om te hardloop - 565 00:27:48,010 --> 00:27:52,050 Ek het tye gehad het toe ek loop hierdie studente se finale projekte. 566 00:27:52,050 --> 00:27:56,080 Ek loop net SQL Inject Me met al die verskillende aanvalle. 567 00:27:56,080 --> 00:28:00,080 En dit is probeer om SQL Inject hierdie pen bediener. 568 00:28:00,080 --> 00:28:03,590 So as ons rol af, vir Byvoorbeeld, dit sê - 569 00:28:03,590 --> 00:28:04,960 Dit is goed as dit terugkeer. 570 00:28:04,960 --> 00:28:08,250 >> Dus is dit 'n sekere waardes getoets. 571 00:28:08,250 --> 00:28:11,170 En die bediener het 'n kode wat negatief was. 572 00:28:11,170 --> 00:28:11,780 Verwyder tydelik. 573 00:28:11,780 --> 00:28:13,030 Dit is goed. 574 00:28:13,030 --> 00:28:17,050 575 00:28:17,050 --> 00:28:20,750 Dit probeer om al hierdie toetse. 576 00:28:20,750 --> 00:28:21,790 So kan jy net loop - 577 00:28:21,790 --> 00:28:27,860 Ek wens ek kon 'n webwerf real vind vinnige wat my sou laat - 578 00:28:27,860 --> 00:28:29,110 Miskien is die CS50 winkel. 579 00:28:29,110 --> 00:28:43,890 580 00:28:43,890 --> 00:28:45,711 >> Sjoe, dit gaan neem te lank. 581 00:28:45,711 --> 00:28:53,090 582 00:28:53,090 --> 00:28:55,130 Ek sal dat die eerste toets nie klaar reg. 583 00:28:55,130 --> 00:28:57,330 So is dit kla. 584 00:28:57,330 --> 00:28:58,470 So het hierdie drie dinge. 585 00:28:58,470 --> 00:29:00,430 Hierdie gereedskap is gratis. 586 00:29:00,430 --> 00:29:03,960 Jy kan dit aflaai en hardloop hulle op jou webwerf, en dit sal jou vertel as 587 00:29:03,960 --> 00:29:06,650 jy het cross-site scripting, as jy 'SQL, as jy' 588 00:29:06,650 --> 00:29:07,900 iets van die wil. 589 00:29:07,900 --> 00:29:12,230 590 00:29:12,230 --> 00:29:14,500 Ek is soort van geknoei. 591 00:29:14,500 --> 00:29:15,550 >> Wat belangrik is - 592 00:29:15,550 --> 00:29:17,900 OK, so nooit vertrou die gebruiker. 593 00:29:17,900 --> 00:29:21,920 Wat ook al die gebruiker insette vir jou, maak seker dat jy dit ontsmet, jy dit skoon, 594 00:29:21,920 --> 00:29:25,300 jy kyk vir die regte dinge doen, dat dit aan jou gee wat jy 595 00:29:25,300 --> 00:29:28,240 wil hom te gee. 596 00:29:28,240 --> 00:29:32,460 Altyd opgedateer word oor wat raamwerke dat jy eintlik jy gebruik. 597 00:29:32,460 --> 00:29:34,630 - As jy iets soos bootstrap gebruik 598 00:29:34,630 --> 00:29:36,340 Ek weet julle gaan gebruik opstart omdat hy gaan om te gaan 599 00:29:36,340 --> 00:29:38,140 oor dit binnekort in die klas - 600 00:29:38,140 --> 00:29:43,120 en Wordpress of iets soos dit, Normaalweg kan gekap word. 601 00:29:43,120 --> 00:29:44,770 >> En dan het jy nie eens weet nie. 602 00:29:44,770 --> 00:29:45,800 Jy is net die bestuur van jou webwerf. 603 00:29:45,800 --> 00:29:47,360 En dit is heeltemal veilig is. 604 00:29:47,360 --> 00:29:51,730 En jy gaan. 605 00:29:51,730 --> 00:29:54,000 So ek is regtig vroeg hengel. 606 00:29:54,000 --> 00:29:55,770 Maar ek wil Pentest Labs bedank. 607 00:29:55,770 --> 00:29:58,140 Ek gaan julle iets wys genoem Pentest Labs. 608 00:29:58,140 --> 00:30:05,000 As jy ouens is regtig geïnteresseerd in watter sekuriteit werklik is, is daar 'n 609 00:30:05,000 --> 00:30:07,300 webwerf met die naam Pentest Labs indien julle gaan dit nou. 610 00:30:07,300 --> 00:30:10,730 O, goed, dit is dit nie. 611 00:30:10,730 --> 00:30:12,030 Ek gaan net om dit te doen soos hierdie. 612 00:30:12,030 --> 00:30:14,400 Google vertel my die antwoord. 613 00:30:14,400 --> 00:30:16,590 >> OK. 614 00:30:16,590 --> 00:30:19,030 En dit leer gebruik om jou - sodat dit sê, leer web penetrasie 615 00:30:19,030 --> 00:30:21,060 die toets van die regte manier. 616 00:30:21,060 --> 00:30:23,650 Dit leer jy - 617 00:30:23,650 --> 00:30:25,150 hopelik, jy is 'n etiese persoon. 618 00:30:25,150 --> 00:30:29,200 Maar dit leer jou hoe jy kan kyk na hoe jy kan kry in webtuistes. 619 00:30:29,200 --> 00:30:31,130 En as jy leer hoe jy kan binne-in kry webwerwe, kan jy leer hoe om te 620 00:30:31,130 --> 00:30:34,960 om jouself te beskerm uit om binne webtuistes. 621 00:30:34,960 --> 00:30:39,100 Laat my zoom in, want miskien het jy ouens kyk nie na die regterkant. 622 00:30:39,100 --> 00:30:46,350 >> Van SQL-inspuiting te skil, so soort van hoe ek kan kry van SQL 623 00:30:46,350 --> 00:30:48,530 inspuiting te skil. 624 00:30:48,530 --> 00:30:53,890 En jy aflaai van hierdie virtuele masjien. 625 00:30:53,890 --> 00:30:55,690 En die virtuele masjien wat reeds kom met die webwerf wat jy 626 00:30:55,690 --> 00:30:56,780 gaan om dit te probeer op. 627 00:30:56,780 --> 00:30:58,030 Jy laai die PDF. 628 00:30:58,030 --> 00:31:03,610 629 00:31:03,610 --> 00:31:08,370 En dit sal vir jou wys reël vir reël wat jy hoef te doen, wat jy kyk. 630 00:31:08,370 --> 00:31:14,560 Dit is wat 'n aanvaller eintlik doen om te kry in 'n webwerf. 631 00:31:14,560 --> 00:31:15,750 >> En sommige van hierdie dinge is ingewikkeld. 632 00:31:15,750 --> 00:31:17,520 Ek wens ek kon gaan oor meer dinge met julle. 633 00:31:17,520 --> 00:31:21,090 Maar ek is bekommerd dat jy ouens het nie regtig - 634 00:31:21,090 --> 00:31:23,090 dit is wat ek het saam met julle ouens, web toetse 635 00:31:23,090 --> 00:31:26,830 vir penetrasie toets. 636 00:31:26,830 --> 00:31:33,540 Nie regtig weet nie wat SQL is en wat - 637 00:31:33,540 --> 00:31:35,960 Carl Jackson se seminaar is awesome as well. 638 00:31:35,960 --> 00:31:37,360 Julle moenie soort weet nie van wat dit is. 639 00:31:37,360 --> 00:31:39,450 Maar as jy na hierdie webwerf, en jy laai hierdie lesse en hierdie 640 00:31:39,450 --> 00:31:43,290 PDFs, kan jy 'n blik op soort neem wat op die gebied van veiligheid werklik 641 00:31:43,290 --> 00:31:46,940 in penetrasie toets, sien hoe jy kan kry in webtuistes en te beskerm 642 00:31:46,940 --> 00:31:48,020 jouself daaruit. 643 00:31:48,020 --> 00:31:56,360 >> So as ek 'n super vinnige oorsig, dit sal verhoed word cross-site scripting. 644 00:31:56,360 --> 00:32:00,160 Jy wil htmlspecialchars te gebruik om elke tyd om die gebruiker insette iets. 645 00:32:00,160 --> 00:32:01,580 Verhoed SQL-inspuiting. 646 00:32:01,580 --> 00:32:04,510 As jy dit doen, is jy reeds beter daaraan toe is as Harvard was 647 00:32:04,510 --> 00:32:06,530 Toe hulle oortree. 648 00:32:06,530 --> 00:32:10,510 En maak seker dat jou wagwoorde is nie in gewone teks. 649 00:32:10,510 --> 00:32:16,220 Maak seker dat jy nie net een manier om hash hulle, maar dat jy grafkelder gebruik, die PHP 650 00:32:16,220 --> 00:32:18,670 funksie wat ek het julle ouens. 651 00:32:18,670 --> 00:32:20,060 Op dié manier, moet jy goed wees. 652 00:32:20,060 --> 00:32:25,830 >> Ook, as jou vriende laat, hardloop SQL Inject Me op hul webwerf. 653 00:32:25,830 --> 00:32:28,140 Begin cross-site scripting op hul webwerf. 654 00:32:28,140 --> 00:32:33,720 En jy sal 'n baie van hierdie webtuistes te sien 'n ton van probleme. 655 00:32:33,720 --> 00:32:40,400 Dit is ongelooflik hoe baie mense vergeet hul databasis te ontsmet of te maak 656 00:32:40,400 --> 00:32:46,340 seker wat die persoon se grootte kriteria is nie script kode. 657 00:32:46,340 --> 00:32:47,200 OK. 658 00:32:47,200 --> 00:32:49,182 Ek soort van werklik begin geëindig. 659 00:32:49,182 --> 00:32:56,510 Maar as iemand enige vrae oor enigiets, kan jy my skiet 'n vraag. 660 00:32:56,510 --> 00:32:56,630 Ja. 661 00:32:56,630 --> 00:32:56,970 Gaan, gaan. 662 00:32:56,970 --> 00:32:59,846 >> Publiek: Ek wil net vra, Kan jy verduidelik hoe die lêer 663 00:32:59,846 --> 00:33:03,160 laai presies werk. 664 00:33:03,160 --> 00:33:03,480 >> LUCIANO Arango: Ja. 665 00:33:03,480 --> 00:33:06,350 So laat ek jou wys die lêer laai ware vinnig. 666 00:33:06,350 --> 00:33:11,300 So het die lêer oplaai - 667 00:33:11,300 --> 00:33:14,500 die probleem wit die oplaai nou is dat - 668 00:33:14,500 --> 00:33:18,541 Ek gaan die kode oop te maak sodat julle sien die kode agter die skerms. 669 00:33:18,541 --> 00:33:22,390 670 00:33:22,390 --> 00:33:24,305 En dit is te laai. 671 00:33:24,305 --> 00:33:28,030 672 00:33:28,030 --> 00:33:31,560 Hier is 'n kode vir die lêer uploader. 673 00:33:31,560 --> 00:33:33,980 >> Ons probeer om te gaan in hierdie Gids oor hier. 674 00:33:33,980 --> 00:33:37,380 675 00:33:37,380 --> 00:33:44,880 En ons probeer om, sodra ons die invoer van die lêer, isset lêer - so as daar 'n 676 00:33:44,880 --> 00:33:50,900 lêer in lêers, wat beeld, dan ons probeer om dit hier te beweeg. 677 00:33:50,900 --> 00:33:51,910 Ons gryp die lêer hier. 678 00:33:51,910 --> 00:33:58,350 Die metode is POST, tipe, beeld, lêer. 679 00:33:58,350 --> 00:33:59,630 Ons stuur hierdie lêer. 680 00:33:59,630 --> 00:34:03,910 En dan wanneer ons dit kry, so een keer lêer het 'n beeld, ons probeer om dit te stuur 681 00:34:03,910 --> 00:34:05,060 na hierdie gids. 682 00:34:05,060 --> 00:34:09,814 >> Die probleem is dat die webwerf is nie laat my gaan na hierdie gids, 683 00:34:09,814 --> 00:34:12,239 omdat dit nie wil hê ek moet terug te gaan. 684 00:34:12,239 --> 00:34:13,489 Dit wil nie vir my om te gaan - 685 00:34:13,489 --> 00:34:15,620 686 00:34:15,620 --> 00:34:17,070 Ek het om te gaan - so hier is laai. 687 00:34:17,070 --> 00:34:17,639 Hier is foto's. 688 00:34:17,639 --> 00:34:21,780 Ek het al die pad terug na die gaan begin en sit dit in daar en dan 689 00:34:21,780 --> 00:34:23,820 gaan sit dit in die gids. 690 00:34:23,820 --> 00:34:30,000 So as ek hardloop 'n terminaal venster en ek wou 'n lêer te skuif - 691 00:34:30,000 --> 00:34:30,409 [Onhoorbaar] 692 00:34:30,409 --> 00:34:32,159 kan dit sien. 693 00:34:32,159 --> 00:34:37,940 As ek wou 'n lêer te skuif, het ek die lêer se naam te sit en dan die 694 00:34:37,940 --> 00:34:40,860 volledige pad wat ek wil om dit te stuur aan. 695 00:34:40,860 --> 00:34:45,110 >> En dan is die bediener is nie laat my terug te gaan. 696 00:34:45,110 --> 00:34:46,929 En so is dit nie te laat my kry om die lêer. 697 00:34:46,929 --> 00:34:47,670 Maar gewoonlik - 698 00:34:47,670 --> 00:34:49,360 so daar is 'n kode vir oplaai van 'n lêer. 699 00:34:49,360 --> 00:34:52,260 So gewoonlik wat sal gebeur, is dat die persoon is nie seker te maak dat my lêer 700 00:34:52,260 --> 00:34:57,920 eindig met. jpeg, so ek wil om te kyk. 701 00:34:57,920 --> 00:35:00,054 Laat my 'n voorbeeld te ware vinnige oopmaak. 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 Hierdie persoon reg - 705 00:35:09,230 --> 00:35:11,980 so byvoorbeeld twee is kontrole As preg_match - 706 00:35:11,980 --> 00:35:14,180 hier is dit hier - 707 00:35:14,180 --> 00:35:19,660 om seker te maak dat eindig met PHP, wat goed is. 708 00:35:19,660 --> 00:35:20,580 Dit is goed. 709 00:35:20,580 --> 00:35:22,820 Maar daar is 'n werklike groot probleem met hierdie. 710 00:35:22,820 --> 00:35:24,600 Dit is goed. 711 00:35:24,600 --> 00:35:44,190 Maar as ek 'n lêer genaamd te sit myfavoritepicture.php.jpeg, ek kon 712 00:35:44,190 --> 00:35:50,060 nog steeds potensieel ontslae te raak van die jpeg en hardloop it.k wat PHP se gevaarlik. 713 00:35:50,060 --> 00:35:53,850 Jy wil nie die persoon in staat wees om kode op jou webwerf. 714 00:35:53,850 --> 00:35:55,750 >> Maar dan. Jpeg dit laat slaag. 715 00:35:55,750 --> 00:36:00,720 Die idee is wat jy regtig wil doen nie lêers, A. Maar, OK, neem wat 716 00:36:00,720 --> 00:36:07,500 jy regtig wil doen, is om seker te maak dat jy lees oor die hele wêreld. 717 00:36:07,500 --> 00:36:08,720 En daar is niks. PHP dit. 718 00:36:08,720 --> 00:36:10,500 Daar is geen. PHP in die hele lêer naam. 719 00:36:10,500 --> 00:36:12,780 >> Publiek: maar jy kan sit. jpeg op die einde. 720 00:36:12,780 --> 00:36:15,830 Die bedieners nog steeds loop die kode. 721 00:36:15,830 --> 00:36:16,870 >> LUCIANO Arango: Nee, dit sal nie hardloop by die begin. 722 00:36:16,870 --> 00:36:22,310 Jy het om terug te gaan en probeer om te sien of jy kan - 723 00:36:22,310 --> 00:36:24,210 >> Publiek: So ons moet - 724 00:36:24,210 --> 00:36:26,020 OK, net nog 'n stel wat behels - 725 00:36:26,020 --> 00:36:26,936 >> LUCIANO Arango: Ja. 726 00:36:26,936 --> 00:36:29,230 >> Publiek: OK. 727 00:36:29,230 --> 00:36:31,486 >> LUCIANO Arango: Ja. 728 00:36:31,486 --> 00:36:31,900 OK. 729 00:36:31,900 --> 00:36:32,865 Enige ander vrae? 730 00:36:32,865 --> 00:36:33,180 OK. 731 00:36:33,180 --> 00:36:37,350 Ek gaan om dit te laat op en sorteer van probeer om te sien as jy ouens kan - 732 00:36:37,350 --> 00:36:40,490 die ander kinders is 'n bietjie meer ingewikkeld, omdat hulle baie 733 00:36:40,490 --> 00:36:44,050 meer kennis van SQL as net die begin kennis van web SQL is en 734 00:36:44,050 --> 00:36:47,010 wat JavaScript is. 735 00:36:47,010 --> 00:36:49,730 Maar ek gaan om te probeer om dit te hou, en hopelik julle ouens sal leer 736 00:36:49,730 --> 00:36:53,230 hieroor en probeer om 'n blik te neem aan wat jy kan doen en hoe baie voorbeelde 737 00:36:53,230 --> 00:36:54,420 kan jy kry deur. 738 00:36:54,420 --> 00:36:56,020 >> Enigeen het enige ander vrae oor dit? 739 00:36:56,020 --> 00:36:59,387 740 00:36:59,387 --> 00:37:00,350 Gaan voort. 741 00:37:00,350 --> 00:37:01,170 Ja, skiet, skiet. 742 00:37:01,170 --> 00:37:01,580 Ja, gaan voort. 743 00:37:01,580 --> 00:37:01,850 Gaan voort. 744 00:37:01,850 --> 00:37:02,310 >> Publiek: OK. 745 00:37:02,310 --> 00:37:08,870 So het ek gehoor hoe Magic Quotes is nie genoeg beveilig. 746 00:37:08,870 --> 00:37:09,280 >> LUCIANO Arango: Wat - 747 00:37:09,280 --> 00:37:10,110 Magic Quotes? 748 00:37:10,110 --> 00:37:10,595 >> Publiek: Ja. 749 00:37:10,595 --> 00:37:15,445 So dit voeg - so wanneer jy insette iets, is dit altyd voeg aanhalings. 750 00:37:15,445 --> 00:37:15,930 >> LUCIANO Arango: Ja. 751 00:37:15,930 --> 00:37:16,000 Ja. 752 00:37:16,000 --> 00:37:16,496 OK. 753 00:37:16,496 --> 00:37:19,113 >> Publiek: En dan het ek al wat gewerk het, maar dan het ek dit ook op. 754 00:37:19,113 --> 00:37:21,648 En dit het gesê dit is nie goed nie. 755 00:37:21,648 --> 00:37:23,050 Maar ek is nie seker hoekom nie. 756 00:37:23,050 --> 00:37:23,360 >> LUCIANO Arango: Ja. 757 00:37:23,360 --> 00:37:26,240 >> Publiek: Moenie Magic Quotes gebruik, want dit is nie veilig nie. 758 00:37:26,240 --> 00:37:26,360 >> LUCIANO Arango: OK. 759 00:37:26,360 --> 00:37:31,735 So Magic aanhaal is wanneer jy 'SQL en dit dra reeds die kwotasie vir jou. 760 00:37:31,735 --> 00:37:33,520 >> Publiek: Dit voeg altyd aanhalings om alles wat jy sit in 761 00:37:33,520 --> 00:37:34,210 >> LUCIANO Arango: Ja. 762 00:37:34,210 --> 00:37:37,190 So die probleem met dit is dat - 763 00:37:37,190 --> 00:37:38,445 Ek neem 'n blik op - 764 00:37:38,445 --> 00:37:41,390 >> Publiek: Hoe bekom die SQL stelling? 765 00:37:41,390 --> 00:37:44,690 Of ek dink dit kan wees soos kwotasie kies. 766 00:37:44,690 --> 00:37:49,030 >> LUCIANO Arango: Ja, jy moet goeie kwotasies vir die SQL. 767 00:37:49,030 --> 00:37:52,900 >> Publiek: Nee, maar die bediener doen dit vir jou. 768 00:37:52,900 --> 00:37:54,460 >> LUCIANO Arango: Hierdie klein aanhalings reg hier, hierdie klein aanhalings? 769 00:37:54,460 --> 00:37:55,670 >> Publiek: Ja. 770 00:37:55,670 --> 00:37:56,450 >> LUCIANO Arango: Ja. 771 00:37:56,450 --> 00:37:59,860 Die probleem is dat jy kan kommentaar uit die verlede - 772 00:37:59,860 --> 00:38:05,770 OK, so wat ek kan doen is ek kan nie kommentaar lewer uit - so laat ons neem 'n blik op - laat my 773 00:38:05,770 --> 00:38:07,920 Maak 'n teks wysig lêer. 774 00:38:07,920 --> 00:38:09,610 Laat my net wysig hierdie hier direk. 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 Kan julle sien dat duidelik? 778 00:38:23,710 --> 00:38:29,730 Wat ek kan doen, is ek kan nie kommentaar lewer die laaste een. 779 00:38:29,730 --> 00:38:32,190 Dit sal kommentaar lewer uit die laaste een. 780 00:38:32,190 --> 00:38:36,760 En dan sal Ek sit een hier, sit al kwaadwillige dinge hier. 781 00:38:36,760 --> 00:38:39,840 782 00:38:39,840 --> 00:38:42,630 >> Sodat die gebruiker is eintlik die skryf, reg? 783 00:38:42,630 --> 00:38:45,230 Die gebruiker is nie die skryf van die dinge, reg? 784 00:38:45,230 --> 00:38:47,430 Dit is wat ek gaan om insette as die persoon wat probeer om in te gaan. 785 00:38:47,430 --> 00:38:49,430 Ek gaan sit in - 786 00:38:49,430 --> 00:38:59,290 787 00:38:59,290 --> 00:39:00,180 dit is een aanhalingstekens. 788 00:39:00,180 --> 00:39:01,760 Dis net kronkel deur die fout. 789 00:39:01,760 --> 00:39:15,080 790 00:39:15,080 --> 00:39:19,400 En dan wat die kode gaan doen - 791 00:39:19,400 --> 00:39:20,190 Jammer, ek gaan om dit uit te neem. 792 00:39:20,190 --> 00:39:22,170 Wat die kode gaan doen, is om Dit gaan die eerste by te voeg 793 00:39:22,170 --> 00:39:24,030 aanhalingstekens hier. 794 00:39:24,030 --> 00:39:26,040 En dit gaan die laaste te voeg aanhalingstekens as well. 795 00:39:26,040 --> 00:39:29,350 796 00:39:29,350 --> 00:39:33,270 >> En dit is ook toe te voeg die laaste, laaste aanhalingstekens. 797 00:39:33,270 --> 00:39:37,380 Maar ek kommentaar hierdie aanhaling punte uit, sodat hulle nie hardloop. 798 00:39:37,380 --> 00:39:41,440 En ek is die afwerking van hierdie kwotasie merk hier verby. 799 00:39:41,440 --> 00:39:42,290 Verstaan ​​jy? 800 00:39:42,290 --> 00:39:43,750 Is jy verloor? 801 00:39:43,750 --> 00:39:45,880 Ek kan die laaste aanhaling kommentaar merk, en sorg van die 802 00:39:45,880 --> 00:39:46,680 eerste aanhalingstekens. 803 00:39:46,680 --> 00:39:47,350 >> Publiek: En net afwerking die eerste een. 804 00:39:47,350 --> 00:39:47,480 >> LUCIANO Arango: Ja. 805 00:39:47,480 --> 00:39:48,400 En net klaar is met die eerste een. 806 00:39:48,400 --> 00:39:48,790 Ja, dit is reg. 807 00:39:48,790 --> 00:39:50,800 Dit is wat ek kan doen. 808 00:39:50,800 --> 00:39:51,890 Ja. 809 00:39:51,890 --> 00:39:52,980 Enige ander vrae soos wat? 810 00:39:52,980 --> 00:39:54,230 Dit is 'n groot vraag. 811 00:39:54,230 --> 00:39:56,960 812 00:39:56,960 --> 00:39:59,790 Nee, ja, miskien. 813 00:39:59,790 --> 00:40:06,150 Hopelik, julle sal soort maak meer sin as jy SQL en bestudeer 814 00:40:06,150 --> 00:40:06,650 dinge soos dat. 815 00:40:06,650 --> 00:40:07,980 Maar maak seker dat jy - 816 00:40:07,980 --> 00:40:10,340 hou hierdie gereedskap in horlosie. 817 00:40:10,340 --> 00:40:12,760 Jammer, hierdie gereedskap hier. 818 00:40:12,760 --> 00:40:14,200 Hierdie gereedskap is groot. 819 00:40:14,200 --> 00:40:17,190 As iemand enige vrae, jy kan my ook e-pos. 820 00:40:17,190 --> 00:40:19,020 Dit is my gewone e-pos. 821 00:40:19,020 --> 00:40:25,015 En dit is my werk e-pos, wat is wanneer ek werk SEAS. 822 00:40:25,015 --> 00:40:26,040 >> OK, dankie. 823 00:40:26,040 --> 00:40:26,740 Dankie, ouens. 824 00:40:26,740 --> 00:40:27,860 Jy is goed om te gaan. 825 00:40:27,860 --> 00:40:28,830 Jy hoef nie om hier te bly. 826 00:40:28,830 --> 00:40:29,570 Moenie klap. 827 00:40:29,570 --> 00:40:30,170 Dit is vreemd. 828 00:40:30,170 --> 00:40:31,420 OK, dankie, ouens. 829 00:40:31,420 --> 00:40:32,320