>> Luciano Arango: OK, guys.
Non mwen se Luciano Arango.
Mwen se yon sophomore nan Adams House.
Apre sa, nou pral yo dwe pale sou sekirite entènèt aktif defans.
Se konsa, mwen travay pou Biwo pou Enfòmasyon sou Sekirite nan lanmè.
Apre sa, pandan ete a, mwen entèrne nan SeguraTec, ki te yon enfòmasyon
konpayi sekirite ki te sèvi pou Bank la nan Columbia.
Sa a sitou kote mwen te aprann sa m 'te aprann twò lwen.
>> Se konsa, kèk nan materyèl la ke nou ap ale nan ale sou jodi a, nou pa gen
vreman pale de nan klas la.
Men, nou pral byento.
Li pral fè tankou SQL, JavaScript.
Apre sa, nou pa te reyèlman ale sou li.
Se konsa, mwen ka sòt nan vòl atravè li, ak ou pa ta ka konnen kèk bagay sa yo.
Men byen vit, w ap aprann li.
Epi li tout pral fè sans.
Epitou yon lòt bagay -
rete etik.
Gen kèk nan bagay sa yo ke ou aprann, ou te kapab itilize nan fason ki pa etik.
>> Si li la pou ou, definitivman eseye.
Mwen definitivman motive ou mesye eseye serveurs pwòp ou a, eseye
ale andedan yo.
Gade wè si ou ka rantre yo, si ou kapab jwenn andedan yo.
Men, pa nenpòt lòt moun nan.
Flik pa vrèman renmen blag yo ak tout la, nou mete sa a isit la.
Nou te pitye alantou.
Yo jwenn vrèman fache.
>> Se konsa, sou tèt yo sou sit entènèt sa a.
Mwen gen li louvri isit la menm.
Sa a se yon sit entènèt, epi li gen yon pakèt moun sou egzanp.
Kisa k ap pase se ke premye egzanp lan se sòt de pral gen yon anpil pi fasil
pase egzanp ki sot pase a nan yon sans ki premye egzanp lan
se konplètman sekirite.
Apre sa, yon sèl ki sot pase a se sòt de ki sa yon nòmal moun sekirite entènèt ta fè.
Men, ou kapab toujou sòt nan jwenn alantou sa a.
Apre sa, nou pral konsantre sou yon sèl ak de, egzanp youn ak de.
>> OK.
Ann kòmanse ak kwa-sit scripting.
JavaScript a ap kouri sou navigatè kliyan an.
Li se yon lang programmation ke ou itilize nan kouri sou navigatè kliyan an pou
ou pa bezwen mete sou sit entènèt la ak tounen nan sèvè a.
Ou genyen li kouri.
Pou egzanp, Facebook, ou pa gen Reload sit entènèt la pou nouvo sitiyasyon
dènye l 'moute.
Li lè l sèvi avèk JavaScript jenere tout bagay sa yo.
Se konsa, nou ka enjekte move JavaScript nan sit entènèt yo.
Apre sa, fason sa a, lè nou voye yon ap mennen nan yon moun, nou te ka sòt de voye l 'ak
kèk nan Kòd la ke nou vle.
>> Genyen ki toujou la ak ki pa ki pèsistan JavaScript -
pèsistan e ki pa ki pèsistan kwa-sit scripting, mwen vle di.
Apre sa, diferans lan ke yo te ki pèsistan se JavaScript ki pral
sove sou sit entènèt la.
Apre sa, ki pa ki pèsistan yo pral JavaScript ki pral aktyèlman jis rive yon fwa.
Se konsa, kite yo gade nan yon egzanp reyèl rapid.
>> OK.
Se konsa, sou sit wèb sa a, ki senp, pa gen anyen k ap pase isit la.
Apre sa, nou pral pou yo eseye insert kèk JavaScript.
Se konsa, jan nou kòmanse ekri JavaScript se nou kòmanse ak script la kòmanse.
Apre sa, nou fèmen l 'ak script.
Nou ap tou senpleman pral mete yon mesaj -
Mwen pral montre w -
alèt.
Avètisman se yon fonksyon ki JavaScript sèvi ak yo montre yon bagay.
Se konsa, kite a eseye li reyèl rapid.
Mwen pral yo ale, alèt hello.
Bon, mwen bliye mete -
OK.
Se konsa, sa a, se senp.
>> Nou mete JavaScript sou yon sit entènèt, epi li li moute soti deyò.
Apre sa, li sòt de sèlman k ap pase sou sit entènèt nou, dwa?
Se konsa, li sanble tankou li pa yon pwoblèm, dwa?
Mwen vle di, ki jan ou ka sèvi ak sa a malveyans?
Se konsa, fason ke entru fè sa a se vrèman senp.
Yo ap ale nan gen tan pwan li.
Yo ka voye lyen sa a ba ou.
Si m 'pral voye ba lyen sa a ou kounye a, epi ou louvri l ', li ale nan
di, bonjou, li di ke sit entènèt mwen an ap di ou bonjou.
>> Se konsa, si m 'te di yon bagay yon ti kras pi entelijan, si mwen rale moute yon
JavaScript fonksyon mwen kalite nan deja ekri -
Men, si ou gade nan li, mwen pral ale Plis pase l 'devan mwen te ekri li.
Se konsa, nou ap ale nan mete yon poz.
Nou pral rete tann pou yon koup segonn.
An reyalite, nou pral rete tann pou, si Mwen pa fè erè, senk segonn.
Sa a ale nan milisgond.
Lè sa a, ki sa nou pwal fè se nou ap ale nan alète ki login la
kwonometre soti nan louvri sesyon tounen pous
Apre sa, nou pral chanje kote nan yon kote diferan.
>> Se konsa, si mwen voye sit entènèt sa a ak yon moun, yo pwal santi yo gen
Navigasyon alantou li, kalm.
Pa gen anyen k ap pase.
Apre sa, nan senk segonn, li pral vle di, ouvri sesyon an kwonometre deyò.
Tanpri ale tounen pous
Yon fwa yo klike sou OK, mwen pral pran yo nan yon lòt sit entènèt.
Assume, sit entènèt la nan ale nan dwe menm jan ak sou sit wèb la ki
yo te nan anvan.
Apre sa, yo ap ale nan ale yo kalifikasyon nan sit entènèt mwen an olye pou yo
sit entènèt yo.
>> Se konsa, mwen ka voye moun yon voye yon imèl ba ak lyen sa a.
Mwen vle di, oh, isit la nan yon lyen.
Sa a se yon bank, pou egzanp.
Mwen vle di, isit la, ale sou lyen sa a.
Apre sa, yon fwa yo voye l ', yo ap yo pral Navigasyon alantou.
Mwen ka tann pou 15 segonn, 20 segonn, ak Lè sa a, pòp ki tanpri ale tounen nan
siyen sou do yo.
Ou mesye ka eseye li ak yon anpil plis bagay sa yo.
Li nan konplike paske ou mesye pa gen pou wè JavaScript, kidonk, ou ta ka
pa konnen kèk fonksyon.
Men, tout sa ou dwe fè se kòmanse ak script, fini ak script.
Apre sa, ou ta ka mete anyen nan mitan yo.
>> Avètisman se yon fonksyon, rete tann pou.
Kote fenèt pran ou nan yon nouvo kote.
Men, ou ka fè sa anpil plis.
Se konsa, lide a se ke nou pran sa la.
Si m 'ale nan egzanp de, ak mwen mete nan Kòd sa a menm, li nan
pa ale nan travay.
Se konsa, li enprime tout bagay soti paske sa ki sit entènèt sa a orijinal
fè se si mwen mete anyen isit la, li pral enprime li dwa isit la.
Se konsa, li pa nan enprime anyen deyò.
Egzanp sa a se aktyèlman tcheke yo wè si script ki gen la.
Se konsa, wi, ale pi devan.
Mande m '.
>> ODYANS: Nou pa voye yon jwenn oswa afiche demann?
>> Luciano Arango: Yeah. yo ap voye yon demann jwenn.
>> ODYANS: Li se?
>> Luciano Arango: Yeah.
Epitou navigatè sèvi ak demann post.
Men, mwen ap eseye montre demann Pran pou nou ka wè ki sa ki
aktyèlman pral sou.
Se konsa, si nou gade nan Kòd sa a - Se konsa, li pa nan travay ankò.
Men, si nou pran yon gade nan Kòd sa a, li pral yo dwe nan egzanp de.
Ki sa ki moun sa a ap fè, moun nan an chaj nan navigatè sa a -
louvri moute, OK -
ap ranplase script la mo.
Sa a se PHP, kote ou nèg ta ka te wè yon ti kras nan ankò.
>> Li te jis ranplase a script mo ki gen non.
Se konsa, sepandan, si mwen ale pi devan ak jis mete nan -
si mwen gen tan pwan Kòd mwen an ankò, ak mwen pral li modifye li jis yon ti kras.
Olye pou yo script, mwen pral chanje li pou script ak yon kapital R. Apre sa,
nou pral wè si Kòd sa a ap travay.
Se konsa, li pa t 'enprime li soti, ki se yon siy bon.
Ak èspere ke nan de plis segonn, li nan ale nan pòp moute.
>> Login ou kwonometre deyò.
OK.
Sa a tout dwat.
Se konsa, tcheke pou script ta ka pa nesesèman travay.
Moun a -
li ka tcheke tou pou script majuskul, script miniskil, ka str
konpare, asire w ke yo ap menm bagay la.
Men, HACKER la ka toujou fè sòt de sa nou te fè nan Vigenere lè nou te deplase
karaktè tounen yon koup, avanse pou pi devan.
Apre sa, li ka konnen ki jan yo mete script tounen nan gen pou li ka enjekte
ki script.
>> Se konsa, sa ou vle itilize se htmlspecialchars
pwoteje sit entènèt ou.
Ak sa ki sa a fè se li fè asire w ke sa ou mete nan -
pou egzanp, sityasyon oswa sa a pi gran pase oswa mwens pase -
se ranplase ak yon bagay ki pa pral -
kite m 'rale nan isit la -
komersyal a vrè.
Li pral ranplase sa yo HTML espesyal karaktè ke nou pral wè lè nou ap
ap pale de -
oh, sa a se pral pran m 'tounen nan -
karaktè sa yo isit la menm.
>> Sa yo siyifi ke yon bagay ap vini.
Pou HTML, ki bracket kòmanse di nou ke yon bagay
HTML ki gen rapò ak ap vini.
Apre sa, nou vle debarase m de sa.
Nou pa vle mete HTML nan yon website.k Nou pa vle itilizatè a yo dwe
kapab mete yon bagay nan sit entènèt yo ki kapab afekte sit entènèt yo, tankou
script oswa HTML oswa yon bagay tankou sa.
Ki sa ki nan enpòtan se ke ou dezenfekte D 'nan itilizatè.
>> Se konsa, itilizatè yo kapab D 'anpil bagay.
Li kapab D 'yon pakèt moun sou bagay eseye fè je chèch ak navigatè ou a nan toujou
kouri sa a Kòd script.
Ki sa ou vle fè se pa sèlman gade pou script, men gade pou tout bagay
ki te kapab move.
Apre sa, htmlspecialchars pral fè sa pou ou, pou ou pa gen
enkyete sou li.
Men, pa eseye fè nan tèt ou sòt de avèk kòd pwòp ou yo.
Èske tout moun klè sou XSS?
>> OK.
Ann ale nan piki SQL.
Se konsa, piki SQL se pwobableman la nimewo yon sèl frajilite
nan sit entènèt diferan.
Mwen vle di, yon bon egzanp -
Mwen te jis fè rechèch sou furthest pou bagay sa a.
Apre sa, mwen te jwenn atik sa a awizom, kote Mwen wè Harvard te rèspèkte,
te rache.
Apre sa, mwen te mande, byen, kijan yo ta fè sa?
Harvard ki pi pè a, pi sekirite inivèsite tout tan.
Dwa?
Oke, yo vyolasyon serveurs yo, entru yo te itilize yon
teknik yo rele piki SQL.
>> Se konsa, sa rive sou yon jou nan baz jou.
Moun bliye pran kont pou piki SQL.
Harvard fè.
Mwen panse ke li di isit la, Princeton, Stanford, Cornell.
Se konsa, kouman fè nou - Se konsa, sa se SQL sa a piki ki pote tout bagay sa yo
moun desann?
OK.
Se konsa, SQL se yon lang programmation ki nou itilize jwenn aksè nan baz done.
Ki sa nou fè se nou chwazi -
Se konsa, sa sa a li kounye a se chwazi tout bagay soti nan tab la.
>> SQL, li chanje nan baz done sa yo ki gen tab plen pou enfòmasyon yo.
Se konsa, chwazi tout bagay soti nan itilizatè kote non an se non itilizatè.
Dwa?
Senp ase.
Lide a nan SQL piki se ke nou insert kèk Kòd move ki ta
je chèch sèvè a nan kouri yon bagay diferan pase sa li
orijinal te kouri.
Se konsa, kite a di pou non itilizatè, nou mete nan oswa 1 egal 1.
Se konsa, nou mete nan oswa 1 egal 1.
Wout la li ap li kounye a yo pral chwazi soti nan itilizatè yo, tout bagay soti nan
itilizatè - sa a se tout bagay -
kote non se non itilizatè, men non itilizatè se oswa 1 egal 1.
>> Se konsa, Non se pa gen anyen oswa 1 egal 1.
1 egal 1 se toujou vre.
Se konsa, sa a ap toujou retounen enfòmasyon soti nan itilizatè yo.
OK.
Nou pa bezwen gen nan kòrèk non itilizatè.
Nou ka jis gen anyen ke nou vle, epi li pral retounen enfòmasyon
ke nou bezwen.
Se pou yo gade nan yon lòt egzanp.
>> Si nou te chwazi tout bagay soti nan itilizatè, kote non se itilizatè TAB gout -
Se konsa, sa ou panse volonte sa-a fè si mwen mete nan non itilizatè a
geny en kòm itilizatè gout tab?
Nenpòt moun ki gen yon lide?
Wi.
>> ODYANS: Li pral di li nan pil fatra tout ròch yo.
>> Luciano Arango: Li pral fè nou konnen pil fatra tout bagay nan sit wèb la,
tout bagay nan baz done a.
Ak sa ki moun ki sèvi ak sa a pou - Se konsa, Mwen pral montre w guys.
Mwen enfim jete tab yo paske mwen pa t 'vle ou
mesye lage tab mwen.
Se pou nou pran yon gade nan sa a.
Se konsa, sa a tou senpleman rale moute enfòmasyon an pou yon moun sèten.
Se konsa, kouman nou konnen si sa a se afekte pa piki SQL.
Nou pral tcheke reyèl rapid si nou ka mete yon bagay -
kite m 'kopi kòd sa a.
Mwen pral ale sou li nan yon dezyèm fwa.
Mwen pral mete rasin ak 1 egal 1.
>> Sa a dwa isit la, sa a siy pousan 23 -
ki sa li vrèman se, si mwen gade dwa isit la nan -
wout la HTML pran nan nimewo, si ou pran yon gade nan lè m 'mete nan yon espas
isit la - si m 'te nan yon bagay espas isit la, li chanje li nan yon pousan 2.
ou nèg wè sa dwa isit la lè m 'mete nan yon espas?
Wout la li travay se ke ou ka sèlman voye valè ASCII nan HTML.
Se konsa, li ranplase, pou egzanp, yon espas ak pousan 20.
Mwen pa konnen si ou nèg te wè ke anvan.
>> Li ranplase yon hashtag ak pousan 23.
Nou bezwen yon hashtag nan fen oswa deklarasyon pou nou ka di nan
baz done bliye fè kòmantè soti sa a pwenvigil dènye nan fen an.
Nou vle li pa bezwen panse osijè de sa.
Nou jis vle li nan kouri tout bagay ke nou gen davans ak
kòmantè ki deyò.
Se pou nou pran yon gade nan li.
>> Se konsa, si m 'te mete yon bagay mal - kite a di pou egzanp, mwen mete 2 egal
1, li pa ban m 'anyen.
Lè m 'mete nan 1 egal 1, ak li fè sa retounen yon bagay, sa a di m 'ki
sa a se vilnerab a yon piki SQL.
Mwen konnen kounye a ke kèlkeswa sa Mwen mete apre sa a -
ak pou egzanp, gout TAB oswa yon bagay tankou sa
pral definitivman travay.
Mwen konnen li la vilnerab a piki SQL paske mwen konnen ke
anba kapo a, li te kite m 'fè 1 an egal 1 bagay.
OK?
>> Men, si nou gade nan lòt piti sa yo, nimewo de ak nimewo twa, li nan
pral fè yon ti jan ti kras pi plis nan tcheke anba a
kapo nan sa li ye.
Se konsa, nenpòt moun ki pèmèt gout nan anyen ankò oswa yo te eseye?
ou nèg sòt de jwenn SQL 'fè ankò?
Paske mwen konnen ou nèg pa gen wè l 'ankò, se konsa li nan kalite
konfizyon pou ou guys.
Ann pran yon gade.
Se konsa, sa a wout la yo anpeche SQLI?
OK.
Se konsa, sa a se vrèman enpòtan paske ou mesye definitivman vle anpeche
sa a nan sit entènèt ou.
>> Si ou pa, tout zanmi ou yo yo ale nan fè plezi nan ou lè yo lage tout
tab ou.
Se konsa, lide a se ke ou fè reparasyon pou SQL an nan yon sèten fason, Lè nou konsidere ke ou matche ak
sa entrain yo itilizatè ak yon kòd sèten.
Se konsa, wout la sa a ap travay se ou prepare baz done a.
Ou chwazi Non, koulè, ak kalori soti nan yon baz done yo rele fwi.
Lè sa a, kote kalori se mwens pase, epi nou mete yon siy kesyon gen
li di nou pral D ' yon bagay nan yon dezyèm fwa.
>> Ak koulè egal, epi nou mete yon kesyon mak li di nou pral
yon bagay D 'nan yon dezyèm tou.
OK?
Lè sa a, nou egzekite li, mete nan 150 ak wouj.
Lè sa a pral tcheke pou wè fè asire w ke de sa yo -
etalaj sa a pral tcheke pou wè ke sa yo de yo se yon nonb antye relatif ak
ke sa a se yon kòd.
Lè sa a, n 'al jwenn yo, epi nou chache tout, nou mete l 'nan wouj.
Sa vle di nou chache tout moun.
Sa vle di aktyèlman nou egzekite SQL an deklarasyon li mete l 'tounen nan wouj.
Isit la nou fè menm bagay la, men nou fè menm bagay la pou jòn.
Epi nou chache tout moun.
>> Apre sa, nan fason sa a, nou anpeche itilizatè a soti nan ke yo te kapab yon bagay D '
se sa ki pa sa nou espesifye, yon kòd oswa yon nonb antye ki pè, pou egzanp.
M 'te pale pi bonè sou repoze sou lòt moun.
Lè ou mesye kòmanse pwojè ou a, w ap pi definitivman pwal itilize
demaraj oswa yon bagay menm jan an.
Èske w mesye janm itilize Wordpress?
Pwobableman ou nèg te itilize Wordpress gen plis chans.
Se konsa, pwoblèm nan ak lè l sèvi avèk bagay sa yo lòt moun nan -
Mwen jis ale nan Google reyèl rapid Wordpress vilnerabilite.
>> Si m 'rale sa a moute kounye a -
Mwen literalman te fè yon de dezyèm Google.
Nou ka wè ke Wordpress -
sa a se ki gen dat kòm septanm '12.
26 se mete ajou.
Configuration la, te default nan Wordpress anvan 3.6 pa anpeche sa yo
sèten téléchargements, ki ta ka fè li pi fasil pou
kwa-sit scripting atak.
Se konsa, yon istwa rapid, yon fwa nou te ap travay ak - se konsa mwen te, nan sezon lete, k ap travay yon
estaj.
Apre sa, nou te travay ak sòt de tankou yon konpayi gwo kat kredi.
>> Apre sa, yo konte sou yon bagay yo rele -
Mwen pa konnen si ou nèg tout tan tout tan te jwe avèk yon pwodui ki rele Joomla.
Joomla se yon pwodwi ki se sèvi ak kontwòl - sòt de menm jan ak
Wordpress, yo itilize yo bati sit entènèt.
Se konsa, yo te gen sou sit wèb yo ap travay sou Joomla.
Sa a se aktyèlman yon kat kredi konpayi nan Kolonbi.
Mwen pral pran ou nan yo sit entènèt reyèl rapid.
>> Se konsa, yo te konn itilize Joomla.
Apre sa, yo pa t 'mete ajou Joomla adisyon a dènye.
Se konsa, lè nou te pran yon gade nan Kòd yo, nou te kapab aktyèlman
ale andedan kòd yo ak vòlè tout la enfòmasyon kat kredi ke yo te genyen,
tout nimewo yo kat kredi, non, adrès yo.
Lè sa a te jis -
ak kòd yo te parfe amann.
Yo te gen gwo kòd.
Li te tout sekirite.
Yo tcheke tout baz done yo.
Yo te fè asire w ke kwa-sit scripting te bon.
>> Men, yo te konn itilize yon bagay ki pa t ' mete ajou, ki pa t 'an sekirite.
Se konsa, ki te mennen yo nan - se konsa ou nèg yo definitivman pral sèvi ak lòt
Kòd, cadres lòt moun nan moun nan konstwi sit entènèt ou.
Asire w ke yo ap an sekirite paske pafwa li pa ou, youn nan ki
fè yon erè.
Men, yon lòt moun fè yon erè, ak Lè sa a, ou tonbe ajenou fas atè paske nan sa.
>> Modpas ak PII.
Se konsa, modpas.
OK.
Se pou nou pran yon gade nan modpas reyèl rapid.
OK.
Tanpri souple di mwen ke tout moun sèvi ak ki an sekirite -
Mwen espere tout moun isit la sèvi ak modpas ki an sekirite.
Mwen jis kite ki nan kòm yon sipozisyon.
Se konsa, ou mesye yo definitivman pral magazen modpas pou sit entènèt ou.
Ou pwal fè yon bagay tankou yon login oswa yon bagay tankou sa.
Ki sa ki nan enpòtan an se pa nan magazen modpas nan tèks plenn.
Sa a se trè enpòtan.
Ou pa vle nan magazen yon modpas ou nan tèks plenn.
>> Apre sa, ou definitivman pa vle reyèlman nan magazen l 'nan yon hash yon fason.
Se konsa, sa yon hash yon fason se ke lè ou jenere yon mo, lè ou mete sa a
mo nan yon fonksyon hash, li pral jenere tounen kèk sòt de skre
mesaj oswa seri skre nan kle.
Mwen pral montre w yon egzanp.
Mwen pral Hash password1 mo yo.
Se konsa, MD5 Hash ki pral retounen m ' kèk sòt de enfòmasyon etranj.
>> Pwoblèm lan se ke gen moun ki soti gen ki renmen ale nan sit entènèt gen
deja kalkile sòt nan tout achaj yo MD5.
Ki sa yo t 'ap yo chita sou yo òdinatè, epi yo ache chak
yon sèl pawòl posib yo deyò jouk yo te sòt de ki sa sa a se.
Si m 'te gade sa a moute -
Mwen jis te pwan hash sa a.
Si mwen jwenn hash sa a soti nan -
si mwen ale nan yon sit entènèt, ak mwen jwenn hash sa a paske mwen jwenn yo a
baz done, epi mwen gade l ', yon moun deja kalkile li soti pou mwen.
>> Yeah.
Se konsa, pèp chita, li tou sa MD5 hash ke ou mete nan yo, yo ap ale nan
tounen vin jwenn ou yon bagay ki se yon mo.
Si m 'Hash yon lòt mo, tankou -
Mwen pa konnen -
trees2.
Mwen pa vle pran wont pa fouye Google m 'yo.
Gen li se, trees2.
Se konsa, yon anpil nan sit entènèt toujou itilize MD5 hash.
Yo di, o, li an sekirite.
Nou pa estoke nan tèks plenn.
Nou gen sa a hash MD5.
Ak tout mwen te fè se jis Google nimewo a.
>> Mwen pa menm gen kalkile tèt mwen.
Mwen ka jis Google li, ak yon moun deja fè l pou mwen.
Isit la nan yon pakèt moun sou yo.
Isit la nan yon pakèt moun sou modpas.
Se konsa, definitivman pa sèvi ak MD5 hash, paske tout sa ou dwe
fè se Google li.
Se konsa, sa ou vle itilize olye?
OK.
Yon bagay yo rele salezon.
Se konsa, sa salezon se -
ou nèg sonje lè nou te ap pale de o aza nan -
Mwen pa si sa ki pset li te -
li te pset gen oswa kat?
>> Nou te pale sou jwenn zegwi a nan gwo pile zèb la.
Ak nan pset a, li te di ke ou te kapab aktyèlman konnen sa ki o aza
jenere paske yon moun nan deja kouri yon o aza milyon fwa ak jis
sòt de ki te fòme sa yo jenere.
Ki sa ou vle fè se mete nan yon antre.
Se konsa, se sa ki mete sèl oubyen sab sòt de se.
Yo te deja kalkile sa mete sèl oubyen sab retounen pou chak travay.
>> Se konsa, sa salezon fè se ou mete nan yon sèl.
Ou mete nan yon mo sèten.
Epi li pral Hash mo sa a tou depann sou sa ou mete nan isit la.
Se konsa, si mwen Hash yon sèl modpas ak sa-a fraz, li ale nan Hash
yon fason diferan si mwen Hash password1 ak yon fraz diferan.
Li sòt de ba li yon kote yo kòmanse pou achin la kapab kòmanse.
Se konsa, li yon anpil pi rèd kalkile, men ou ka toujou kalkile li, espesyalman
si ou itilize yon move sèl.
>> Moun ki te deja tou kalkile sèl komen ak kalkile
sa ke li se.
Sèl o aza yo se pi bon, Men, fason ki pi bon se sèvi ak
yon bagay yo rele kripte.
Ak sa ki kripte pèmèt ou - Se konsa, fonksyon sa yo, se
deja konstwi pou ou.
Anpil moun bliye ke, oswa yo bliye yo sèvi ak li.
Men, si mwen gade kripte PHP, kripte deja retounen yon kòd hash pou mwen.
Apre sa, li aktyèlman sèl li anpil fwa ak achaj li plizyè fwa.
>> Se konsa, nou pa bezwen fè sa-a.
Se konsa, tout sa ou dwe fè se voye l 'nan kripte.
Apre sa, li pral kreye yon gwo hash san yo pa ou gen enkyetid sou sèl
oswa nenpòt bagay.
Paske si ou te sèl li, ou gen a sonje sa SALT ou te itilize
paske si se pa sa, ou pa kapab jwenn ou modpas tounen san yo pa la
sèl ke ou itilize yo.
OK.
>> Epi tou li pèmèt idantifye pèsonèl enfòmasyon.
Sekirite Se konsa, sosyal, kat kredi - sa a, se bèl evidan.
Men pafwa moun bliye wout la li travay se, ki kantite enfòmasyon ou
aktyèlman bezwen jwenn kèk yon sèl moun ki?
Yon moun te fè yon etid sou sa a yon fason tounen.
Apre sa, li te tankou, si ou gen yon non plen, ou pa ka jwenn
yon moun ki fasil.
Men, sa ki si ou gen yon tout non ak dat yo te fèt?
Eske se sa ke ase yo idantifye yon moun espesyalman?
>> E si w gen non yo ak nan kote adrès lari yo ke yo ap viv sou?
Eske se sa ke ase yo jwenn yon moun?
Epi sa a, lè yo kesyon, ki sa ki enfòmasyon pèsonèl ki pèmèt idantifye, ak
sa ou ta dwe enkyete sou pa bay lwen?
Si ou bay lwen idantifye pèsonèl enfòmasyon ke yon moun ba ou,
ou te kapab potansyèlman jwenn ankòz.
Lèfini, nou definitivman pa vle sa.
>> Se konsa, lè w ap mete sit entènèt ou a soti, epi ou gen yon vrèman fre
konsepsyon, èspere ke ou te fè yon pè final pwojè.
Nenpòt ou sòt de vle mete l 'deyò.
Ou vle asire w ke tout sa ou ap pran soti nan itilizatè a, si li nan
enfòmasyon pèsonèl ki pèmèt idantifye, ou vle asire w ke ou ap ke yo te reyèlman
pran prekosyon avèk li.
>> Shell piki.
OK.
Shell piki pèmèt entru nan jwenn aksè nan liy aktyèl lòd ou
nan sèvè ou.
Se konsa, li se kapab kouri Kòd ke ou pa kapab kontwole.
Ann pran yon egzanp sou sa bèl fisèl dwa isit la.
Si nou ale nan sit wèb la ankò, mwen se ale nan antre nan piki kòd.
Se konsa, sa sa a fè se -
li la tou sa nou te gade nan anvan.
Nou ap kite itilizatè a mete nan tou sa li vle, epi li pral enprime soti
tou sa ou vle.
>> Se konsa, mwen pral mete yon apèl.
Ki sa sa fè se -
li pral kòmanse pa konkatenan.
Se konsa, li pral kite m 'kouri tou sa bay lòd kouri moun nan
anvan ak lòd mwen.
Apre sa, mwen ap kouri yon sistèm lòd.
Apre sa, strings sa yo sot pase a yo se - sonje sa m 'te pale ak ou nèg sou sa,
Lè nou konsidere ke ou gen programme li nan yon metòd URL.
Si mwen kouri sa a kounye a -
Mwen pral montre w sou isit la -
ou pral wè sa m 'te fini moute kouri yon lòd.
>> Sa a se aktyèlman sèvè aktyèl la ki sit entènèt mwen an ap kouri sou.
Se konsa, nou pa vle sa, paske mwen ka kouri -
sèvè sa a se pa m '.
Se konsa, mwen pa vle dezòd yo l ' sè, sèvè Marcus a.
Men, ou ka kouri plis kòmandman ki danjere.
Apre sa, ki kapab, ou ta ka efase dosye, retire repèrtwar.
Mwen ka retire yon anyè sèten si Mwen te vle, men mwen pa vle
fè ke yo Marcus.
Li se yon nèg bèl.
Li kite m 'prete sèvè l' yo.
Se konsa, mwen pral kite l ' koupe sou yon sèl la bon.
>> Se konsa, sa nou pa vle sèvi ak - nou pa fè sa vle sèvi ak eval oswa sistèm.
Eval oswa sistèm pèmèt nou fè apèl sistèm sa yo.
Vle di eval evalye.
Sistèm vle di sa m 'kouri.
Li kouri yon bagay nan sistèm nan.
Men, nou ka entèdi bagay sa yo nan PHP se konsa ke nou pa itilize yo.
Apre sa, Upload file.
Mwen te pral fè yon pè bagay ak téléchargement a dosye.
Men, tankou mwen te di nou nèg, dosye mwen an bagay téléchargement se pa travay.
Si m 'te vle Upload yon dosye kounye a -
si m 'te vle Upload yon dosye, epi li yon foto -
ou gen yon bagay téléchargement sa a, se yon foto.
Sa a amann.
Pa gen anyen k ap pase.
>> Men, si ou gen yon dosye téléchargement, pou egzanp, ak itilizatè a aktyèlman téléchargements
yon dosye PHP oswa yon dosye ègzekutabl oswa yon bagay tankou sa yo, lè sa a ou te kapab potansyèlman
gen yon pwoblèm.
Sa a te travay anvan.
Malerezman pou m ', li nan pa ap travay ankò.
Si m ', pou egzanp, Upload sa a ranpli, mwen se pa jwenn pèmisyon yo Upload
dosye a akòz sèvè a pa te m 'yo.
Se konsa, nèg la se vrèman entelijan.
>> Se konsa, nou pa vle -
Mwen pral montre w mesye -
OK, sa yo se kèk zouti vrèman fre.
Se konsa, sa yo -
ale nan - si ou nèg gen Firefox - èspere ke ou fè.
Genyen de ajoute Kreyòl-rele SQL piki M 'ak Kwa-Site Script mwen.
Yo louvri moute tankou ti bò ba sou bò la.
Men, si m 'te pou yo ale nan CS60 pou egzanp -
Se konsa, sa li fè sa se li sanble pou tout fòm sa yo ki -
èspere ke, mwen pa pral resevwa nan pwoblèm yo pou sa.
>> Men, OK.
Isit la nan sistèm nan PIN.
Se konsa, lè mwen kòmanse kap chèche twou nan sistèm nan, premye bagay la mwen fè se
louvri moute ti kras bèl sa a zouti sou bò la.
Apre sa, mwen pral teste fòm ak atak oto.
Se konsa, ki sa sa a fè se li pral tou dousman louvri moute yon pakèt moun sou navigatè.
Isit la nan yon pakèt moun sou navigatè.
Apre sa, li la ap eseye chak konbinezon yon sèl sou kwa-site scripting
ki di ke gen petèt se, si ou wè sou bò lanmè a.
>> Epi li pral ban m 'yon rezilta sòt de sa repons lan se.
Tout pase.
Li evidan, yo tout pase.
Mwen vle di, yo ap vrèman entelijan pèp la moute ale la.
Men, si m 'te nan kouri -
Mwen te gen fwa anvan lè m 'kouri sa a sou pwojè final elèv yo.
Mwen tou senpleman kouri SQL piki mwen ak tout atak diferan.
Apre sa, li la ap eseye SQL piki sèvè PIN sa a.
Se konsa, si nou desann, pou egzanp, li di -
sa a se bon si li retounen.
>> Se konsa, li fè tès kèk valè sèten.
Apre sa, sèvè a tounen yon kòd ki te negatif.
Retire pou yon ti tan.
Sa a se bon.
Li ap eseye tout egzamen sa yo.
Se konsa, ou ta ka tou senpleman kouri -
Mwen swete mwen te kapab jwenn yon sit entènèt reyèl rapid ki ta kite m '-
petèt magazen an CS50.
>> Wow, sa a ki pral pran wout twò lontan.
Mwen pral kite premye tès la pa fini dwat.
Se konsa, li pote plent.
Se konsa, sa yo, se twa bagay sa yo.
Zouti sa yo yo gratis.
Ou ka telechaje yo e yo kouri yo sou sit entènèt ou a, epi li pral fè w konnen si
ou gen kwa-sit scripting, si ou gen SQL, si ou gen
yon bagay nan renmen an.
Mwen sòt de pitye yo.
>> Ki sa ki nan enpòtan -
OK, se konsa pa janm mete konfyans itilizatè a.
Kèlkeswa sa entrain yo itilizatè nou la a, fè w ke ou dezenfekte li, ou netwaye li,
ou tcheke pou bagay sa yo dwat, ke li nan ban nou ki sa ou
vle l 'ba ou.
Toujou ap mete ajou sou sa ki cadres ke w ap aktyèlman lè l sèvi avèk.
Si ou itilize yon bagay tankou demaraj -
Mwen konnen ou nèg yo ale nan sèvi ak demaraj paske li k ap pase yo ale
sou sa a pli vit nan klas -
ak Wordpress oswa yon bagay tankou sa, nòmalman sa a ta ka rache.
>> Lè sa a, ou pa menm konnen.
W ap sèlman kouri sit entènèt ou.
Lè li nan totalman an sekirite.
Epi ou desann.
Se konsa, mwen peche reyèlman bonè.
Men, mwen vle di mèsi Pentest Labs.
Mwen pral montre w mesye yon bagay rele Pentest Labs.
Si ou nèg yo se reyèlman enterese nan sa sekirite vrèman se, gen yon
sit entènèt yo rele Pentest Labs si ou nèg ale nan li kounye a.
Oh, byen, sa a, se pa li.
Mwen jis ale nan kouri li tankou sa a.
Google di m 'repons lan.
>> OK.
Apre sa, li anseye sèvi ak ou - se konsa li di, aprann entènèt pénétration
tès chemen dwat la.
Li anseye ou -
èspere ke, w ap yon moun ki etik.
Men, li anseye w kouman ou ka gade nan kijan ou kapab jwenn andedan sit entènèt.
Men, si ou aprann kijan ou ka jwenn andedan sou sit entènèt, ou ka aprann ki jan yo
pwoteje tèt ou sòti nan ap resevwa andedan sit entènèt.
Kite m 'rale nan paske petèt ou mesye yo pa gade nan dwa sa a.
>> Soti nan piki SQL koki, se konsa sòt de kouman mwen ka jwenn soti nan SQL
enjeksyon koki.
Epi ou download machin sa a vityèl.
Apre sa, machin nan vityèl deja vini ak sit entènèt la ke w ap
ale nan eseye li sou.
Ou download sa a PDF.
Apre sa, li pral montre w liy pa liy ki sa ou dwe fè, ki sa ou chèk la.
Sa a se sa yon atakè aktyèlman fè jwenn anndan yon sit entènèt.
>> Se konsa, kèk nan bagay sa a se konplike.
Mwen swete mwen te ka ale sou plis bagay sa yo avèk ou guys.
Men, mwen enkyete ke ou nèg gen pa reyèlman -
sa a se sa mwen te ale sou ak ou nèg, tès entènèt
pou fè tès pénétration.
pa vrèman konnen ki sa SQL se ak sa ki -
Seminè Carl Jackson a se pè tou.
Ou mesye pa konnen sòt nan sa ki sa a se.
Men, si ou ale nan sit entènèt sa a, epi ou download tutoryèl sa yo ak sa yo
Pdf, ou ka pran yon gade nan sòt de sa ki zòn nan nan sekirite reyèlman fè
nan tès pénétration, wè ki jan ou kapab jwenn sou sit entènèt andedan ak pwoteje
tèt ou soti nan li.
>> Se konsa, si mwen fè yon BECA super rapid, li pral anpeche kwa-sit scripting.
Ou vle itilize htmlspecialchars chak mezire tan entrain itilizatè yon bagay la.
Evite piki SQL.
Si ou fè sa, ou deja pi byen pase Harvard te
lè yo te rèspèkte.
Apre sa, asire w ke modpas ou yo pa nan tèks plenn.
Asire ou ke ou pa fè sa yon sèl fason hash yo, men ke ou itilize kripte, PHP a
fonksyon ke mwen te montre ou guys.
Nan fason sa a, ou ta dwe bon.
>> Epitou, si zanmi ou kite ou, kouri SQL piki m 'sou sit entènèt yo.
Kouri kwa-sit scripting sou sit entènèt yo.
Apre sa, ou pral wè yon anpil nan sit entènèt sa yo gen yon tòn frajilite.
Li nan enkwayab ki jan moun anpil bliye dezenfekte baz done yo oswa yo fè
asire ki sa Anthrax moun nan se pa Kòd script.
OK.
Mwen sòt de te fini vrèman byen bonè.
Men, si yon moun gen nenpòt kesyon sou anyen, ou ka tire m 'yon kesyon.
Yeah.
Ale non, ale.
>> ODYANS: Mwen jis vle mande, èske ou kapab eksplike kijan dosye a
Upload egzakteman travay.
>> Luciano Arango: Yeah.
Se konsa, kite m 'moutre ou dosye a Upload reyèl rapid.
Se konsa, téléchargement nan dosye -
pwoblèm nan konprann téléchargement nan dosye kounye a se ke -
Mwen pral louvri kòd la pou ou mesye wè kòd la dèyè sèn nan.
Apre sa, li se Upload.
Isit la nan yon kòd postal pou telepartajeur a dosye.
>> Nou ap eseye antre nan sa a anyè sou isit la.
Epi nou ap eseye, yon fwa nou opinyon an ranpli, dosye ise - Se konsa, lè gen yon
pote nan dosye, ki imaj, Lè sa a, nou eseye pou avanse pou li isit la.
Nou gen tan pwan dosye a sou isit la.
Metòd la se POST, kalite, imaj, dosye-a.
Lèfini, nou ap voye sa a ranpli.
Lè sa a, yon fwa nou jwenn li, se konsa yon fwa dosye gen yon imaj, nou ap eseye voye l '
anyè sa a.
>> Pwoblèm lan se ke sou sit wèb la se pa kite m 'ale nan anyè sa a,
paske li pa vle m 'ale tounen.
Li pa vle m 'ale -
Mwen gen yo ale - Se konsa, isit la nan Upload.
Isit la nan imaj.
Mwen gen yo ale tout wout la tounen nan la kòmanse epi mete l nan gen ak Lè sa a,
ale, li mete l 'nan anyè a.
Se konsa, si mwen te kouri yon fenèt tèminal, epi mwen te pou avanse pou pi yon dosye -
[Fèbl]
kapab wè li.
Si mwen te vle pou avanse pou pi yon dosye, mwen gen yo mete non an ranpli ak Lè sa a, nan
chemen konplè Mwen vle voye li nan.
>> Lè sa a, sèvè a se pa kite m 'ale tounen.
Se konsa, li pa kite m 'jwenn ak sa yo ki dosye.
Men, nòmalman -
Se konsa, gen nan yon kòd postal pou telecharje yon dosye.
Se konsa, nòmalman sa ki pral rive se ke an moun nan pa tcheke si dosye mwen an
fini ak. jpeg, se konsa mwen ta vle chèk la.
Kite m 'louvri yon egzanp twò reyèl rapid.
>> OK.
Moun sa a dwa -
Se konsa, egzanp de se tcheke si preg_match -
isit la se plis pase isit la -
a asire w ke li fini ak PHP, ki se yon bon bagay.
Sa a se bon.
Men, gen nan yon gwo reyèl pwoblèm ak sa.
Sa a se bon.
Men, si m 'te mete yon dosye rele myfavoritepicture.php.jpeg, mwen te kapab
toujou kapab debarase m de jpeg la epi kouri it.k Sa PHP a danjere.
Ou pa vle moun lan nan kapab kouri Kòd sou sit entènèt ou.
>> Men, lè sa a. Jpeg pèmèt li pase.
Lide a se ki sa ou reyèlman vle fè se pa sa pran dosye, A. Men,, OK, ki sa ki
ou reyèlman vle fè se asire w ke w ap li sou lemonn antye.
Apre sa, pa gen anyen. Php nan li.
Gen nan pa gen php nan la. dosye antye Non.
>> ODYANS: Men, ou te kapab mete. jpeg sou fen a.
Serveurs yo te toujou kouri Kòd la.
>> Luciano Arango: Non, li pa pral kouri nan konmansman an.
Ou gen yo ale retounen lakay yo epi eseye yo wè si ou kapab -
>> ODYANS: Se konsa, nou gen -
OK, jis yon lòt seri ki enplike nan -
>> Luciano Arango: Yeah.
>> ODYANS: OK.
>> Luciano Arango: Yeah.
OK.
Nenpòt lòt kesyon?
OK.
Mwen pral kite sa a leve, li sòt nan eseye wè si ou guys kapab -
yo menm ki lòt yo se yon ti kras pi plis konplike paske yo mande pou anpil
plis konesans nan SQL pase jis la kòmanse konesans nan SQL entènèt se ak
sa JavaScript se.
Men, mwen pral eseye kenbe sa a leve, ak èspere ke ou nèg pral aprann
sou sa a epi eseye pran yon gade vit nan sa ou kapab fè ak ki jan anpil egzanp
ou ka jwenn nan.
>> Nenpòt moun ki gen nenpòt ki lòt kesyon sou li?
Ale pi devan.
Yeah, tire, tire.
Yeah, ale pi devan.
Ale pi devan.
>> ODYANS: OK.
Se konsa, mwen tande pale sou ki jan majik Quotes yo pa jwenn ase.
>> Luciano Arango: Ki sa ki -
Quotes majik?
>> ODYANS: Yeah.
Se konsa, li ajoute - Se konsa, chak fwa ou D ' yon bagay, li toujou ajoute quotes.
>> Luciano Arango: Yeah.
Yeah.
OK.
>> ODYANS: Lè sa a, mwen menm si ke te travay, Men, lè sa a mwen fouye li.
Apre sa, li te di li pa bon.
Men, mwen pa fin sèten pou ki rezon.
>> Luciano Arango: Yeah.
>> ODYANS: Pa sèvi ak majik Quotes, paske li pa an sekirite.
>> Luciano Arango: OK.
Quotes Se konsa, majik, se lè ou insert SQL epi li deja ajoute quote la pou ou.
>> ODYANS: Li toujou ajoute quotes alantou tou sa ou mete pous
>> Luciano Arango: Yeah.
Se konsa, pwoblèm nan ak se sa ki sa -
Mwen pral pran yon gade nan -
>> ODYANS: Ki jan li jwenn deklarasyon an SQL?
Oswa Mwen devine li ta ka tankou quote chwazi.
>> Luciano Arango: Yeah, ou bezwen quotes bon pou SQL an.
>> ODYANS: Non, men sèvè a fè li pou ou.
>> Luciano Arango: sa yo ti quotes dwa isit la, sa yo quotes ti kras?
>> ODYANS: Yeah.
>> Luciano Arango: Yeah.
Pwoblèm lan se ke ou kapab kòmantè soti dènye a -
OK, Se konsa, sa mwen kapab fè se mwen ka fè komantè soti - Se konsa, kite a pran yon gade nan - kite m '
louvri yon dosye modifye tèks.
Kite m 'jis modifye sa a dwa isit la dirèkteman.
OK.
Èske ou ka mesye wè ke byen klè?
Kisa mwen ka fè se mwen ka fè komantè pran yon sèl ki sot pase a.
Sa a pral fè kòmantè soti yon sèl ki sot pase a.
Lè sa a, mwen pral mete yon sèl isit la, mete tout bagay move isit la.
>> Se konsa, itilizatè a la aktyèlman Anthrax, dwa?
Itilizatè a pa Anthrax bagay sa yo, dwa?
Sa a se sa mwen pral D 'kòm moun nan ap eseye jwenn anndan an.
Mwen pral mete nan -
sa a, se yon sèl mak sitasyon pi ba.
Se jis nan squiggly pa erè.
Lè sa a, sa ki kòd la se pral fè -
regrèt sa, mwen pral pran sa a soti.
Ki sa ki kòd la ki pral fè se li pral ajoute premye a
sitasyon pi ba make isit la.
Apre sa, li pral ajoute dènye a sitasyon pi ba mak kòm byen.
>> Apre sa, li la tou ale nan ajoute a pase a, dènye sitasyon pi ba mak.
Men, mwen fè kòmantè sitasyon pi ba sa yo make soti, pou yo pa kouri.
Apre sa, mwen ap fini sitasyon sa a make sou isit la.
Èske ou konprann?
Èske ou pèdi?
Mwen ka fè komantè sitasyon pi ba ki sot pase a make, ak pran swen nan la
premye sitasyon pi ba mak.
>> ODYANS: Epi jis fini yon sèl la an premye.
>> Luciano Arango: Yeah.
Epi jis fini yon sèl la an premye.
Yeah, sa a, se dwa.
Sa a ki sa mwen kapab fè.
Yeah.
Nenpòt lòt kesyon tankou sa?
Sa se yon kesyon gwo.
Pa gen, repons lan se wi, petèt.
Èspere ke, ou nèg ap sòt de fè plis sans lè w ap etidye SQL ak
bagay sa yo tankou sa a.
Men, asire w ke ou -
kenbe zouti sa yo nan kite dòmi pran nou.
Padon, zouti sa yo sou isit la.
Zouti sa yo, se gwo.
Si yon moun gen nenpòt kesyon, ou ka voye yon imèl ba m 'tou.
Sa a se imel nòmal m 'yo.
Lè sa a se imel travay mwen an, ki se lè Mwen travay nan lanmè.
>> OK, mèsi.
Mèsi, mesye.
W ap bon yo ale.
Ou pa oblije rete isit la.
pa bat.
Sa a etranj.
OK, di Bondye mèsi, guys.