Når vi tænker på et tidspunkt, hvor hackere, hackere har tendens til at lide dette portræt: en enspænder, stille og roligt ind andre folks servere, at ødelægge eller stjæle andre folks hemmeligheder. Måske han vil ændre vores hjemmeside, vil uretmæssige krav stjæle kunder kreditkortnumre og passwords. Desuden vil den hackerangreb til at besøge vores hjemmeside kunder. Samtidig blev vores server medgerningsmanden. Microsoft kalder det angreb som en "cross-site script" angreb. De fleste af disse angreb fandt sted i dynamisk genereret webside på det rigtige tidspunkt, men det hacker's mål er ikke at dit websted, men du besøge hjemmesiden for kunden.
Beskrivelse af cross-site script angreb
I en bog med titlen ADVISORY CA--2000-02 af bladet, advarede CERT os: Hvis serveren på kundens input ikke er en effektiv kontrol, vil ondsindede hackere indtaste nogle HTML-kode, når disse HTML SCRIPT program kode input bruges, kan de bruge den til at udføre sabotage, såsom indføjelsen af nogle offensive billeder eller lyd, osv., men også kan forstyrre kunden ret website.
Vi ved, at nogle venner var blevet tilskyndet til at nogle tvivlsomme gratis websteder, de får kun 10 til 20 lille vindue, disse vinduer ofte ledsaget af dannelsen af det fejlslagne JAVA eller avascript sikkerhed knap, er dette kendt som mus fælde. Luk vinduet er forgæves, når vi lukker et vindue, vil et andet vindue dukker op et par 10. Dette sker ofte, når administratoren ikke i Hou Fasheng. Hackere bruger musen begivenhed er cross-site angreb metoder SCRIPT eksempel på kunden.
SCRIPT tags og ondskabsfuld fortræd er ikke enkle, kan de endda stjæle oplysninger og ødelagde systemet. Ikke en klog eller endda smart hackere er i stand til at blande sig med eller ændre server ved hjælp af SCRIPT datainput. Script-kode kan også angribe ved hjælp af klient-systemer, gøre skade på din harddisk. Og du ved, når du bruger server side, hackere SCRIPT er også et sikkert sted, hvor din server kører til! Hvis kunden et brev på din server er identificeret, den samme tillid til, at de vil SCRIPT skadelig kode. Selv denne kode i form af script eller objekt server fra hackere.
Selv med en firewall (SSL) ikke kan forhindre cross-site angreb SCRIPT. Det er fordi, hvis udstyret genererer skadeligt script-kode bruger også SSL, SSL-server, kan vi ikke identificere koden til. Vi har at gøre med kunden har tillid til så hånden over hackere det? Og eksistensen af en sådan skade, gøre det muligt tab af omdømme dit websted.
For det første cross-site angreb SCRIPT eksempel:
Ifølge CERT's oplysninger, generelt dynamisk input, der er disse former: URL parametre, form elementer, COOKISE og anmodninger om oplysninger. Lad os analysere, de eneste to sider af hjemmesiden, er hjemmesiden hedder: MYNICESITE.COM. Første bruge en formular eller COOKIE at opnå brugernavn:
% @ Language = VBScript%
% Hvis Request.Cookies ("brugernavn") "" Så
Dim strRedirectUrl
strRedirectUrl = "page2.asp? brugernavn ="
strRedirectUrl = strRedirectUrl & Response.Cookies ("brugernavn")
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
TITLE MyNiceSite.com Home Page / TITLE
/ HEAD
BODY
H2 MyNiceSite.com / H2
FORM Method="post" action="page2.asp"
Indtast dit MyNiceSite.com brugernavn:
INPUT Type="text" name="userName"
INPUT Type="submit" name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End If%
Den anden side returnerer brugernavnet at byde:
% @ Language = VBScript%
% Dim strUserName
Hvis Request.QueryString ("brugernavn") "" Så
strUserName = Request.QueryString ("brugernavn")
Else
Response.Cookies ("brugernavn") = Request.Form ("brugernavn")
strUserName = Request.Form ("brugernavn")
End Hvis%
HTML
HEAD / HEAD
BODY
h3 Align="center" Hej: % = strUserName% / H3
/ BODY
/ HTML
Når du indtaster tekst normal ofte, alt er normalt. Hvis du indtaster Script koden: script alert (''Hej .''; / script , vil avascript advarsel pop up:
Næste gang du besøger denne advarsel vises det samme; Dette skyldes, at script-kode i din tid efter første besøg havde været at opholde sig i en cookie. Dette er et simpelt eksempel på cross-site-angreb.
Hvis du tror, dette er et særligt tilfælde, kan du også ønsker at søge andre steder på nettet, personligt prøve. Jeg har nogle store offentlige steder, uddannelsesmæssige sites og kommercielle sites testet, nogle af dem mere, end hvad situationen der, jeg selv fundet et site jeg ofte bruger kreditkort er rent faktisk også på input uden filtrering, Tænk virkelig forfærdeligt.
For det andet, der anvender E-Mail til Cross Site Script Attack
Cross-site script angreb anvendes i listen server, usenet-servere og postservere er særligt sårbare over for komme. Det følgende er et eksempel til at forklare MyNiceSite.com site. Da du ofte bruge denne hjemmeside, at dens indhold ikke sætte det ned, du elsker, så du ubevidst sætter browseren i en dynamisk web-indhold er altid tillid denne indstilling.
MyNiceSite.com site er altid gennem salg af tegningsretter e-mail adresse på deres Email breve for at opnå indtægter, der er i sandhed en meget god idé. Så jeg købte det i en postkasse adresse. Og lavet en masse mail til dig. I brevet, fortæller jeg dig så hurtigt som muligt at besøge denne hjemmeside og tjekke din konto ved hjælp af den seneste situation. For at give dig en bekvem, jeg også lavet et link til dette brev. Jeg vil samkøre URL, brugernavn parameter i script-kode for at slikke tilføjet. Nogle kunder uforvarende klikker på dette link, som er på min, når (billedet), og jeg har også nydt godt af:
Det er dette arbejde, som når du klikker på dette link efter link i script-kode, vil blive brugt som rettesnor din browser til download mit avascript programmet og udføre det. Min Script tjekker til dig ved hjælp IE browser, for at fortsætte til download ActiceX kontrol particularlyNasty.dll. Fordi før du har indholdet af denne hjemmeside, der altid er sikker, så mit script-kode og Active kontrol på din maskine kan køre frit.
3, ActiveX angreb beskrivelse
Ved drøftelsen af ActiveX, CERT og Microsoft ikke henvises til cross-site script metode til den risiko, som. W3C I "Sikkerhedsrådet Ofte stillede spørgsmål af ActiveX sikkerhedsspørgsmål blev foretaget på en mere detaljeret beskrivelse. Java-applet om kontrol af systemet er strengt begrænset. Søn udvikling, når den bestemmer, at kun de, der ikke udgør nogen trussel mod sikkerheden i det system fik lov til at drive.
På den anden side er ActiveX om driften af systemet ikke er strengt begrænset. Men hvis man er blevet hentet, kan du installere den eksekverbare som gør, hvad de ønskede at gøre det samme. IE browser for denne funktion er også visse begrænsninger, som de usikre stedet, og i dens standard indstillinger vil ikke give dig mulighed for at downloade eller give dig en advarsel prompt. Er baseret på udviklingen af ActiveX for virksomheder som VeriSign Inc., har de givet nummereret ActiveX kontroller. Når du downloader efter det tidspunkt, kontrol, vil IE browser giver dig en advarsel og viser graden af sin troværdighed slyngel. Af brugeren bestemme, om at tro denne kontrol. Som et system sikkerhed øges.
Men for de brugere, der ikke har meget erfaring, de ofte ikke bevidst ret til at ændre de oprindelige indstillinger, Rang disse kontroller, hvis der er noget spørgsmål at hente. Desuden novice a, selv i tilfælde af en hurtig at downloade uden at tænke vil ikke gøre nogen mærke, hvori kontrollerne. I vores eksempler, fordi du har tillid til webstedet, ændre browserindstillinger, så, ActiveX kontroller uden forudgående rykkerskrivelser hente, og ubevidst på din maskine begynder at køre .
4, 16 hex kodet ActiveX Script angreb
Dårlige hensigter bør skelne mellem etiket og scriptet er meget vanskeligt. Script kan også være i form af 16 hex skjule sig. Lad os se på de følgende E-mail dette eksempel skal du? Det er i form af 16 hex er sendt ud:
Det er næsten en fuldstændig meddelelse, som indeholder en 16 hex forfalsket URL parametre: afsender = mynicesite.com. Når brugeren klikker på linket, brugerens browser vil begynde den første sag henviste direkte til forarbejdning af pop-up advarsel vindue.
Del II: Cross Site Script Attack Kriminalpræventive
For det første hvordan man undgår at blive cross-site server angreb Script
Heldigvis forhindrer cross-site angreb Script teknologi perfektionere. Flere måder dette kan træffes for at forhindre cross-site angreb Script:
1. På dynamisk genererede sider er kodede tegn
2. At filtrere og begrænse udledning
3. Brug af HTML og URL-kodning
1. På dynamisk genererede sider er kodede tegn
Du skal først bruge er dynamisk genererede sider om tegnkodning, du behøver at gøre det, eller hacker kan ændre indstillingerne for din karakter let ved din linje i forsvaret. Hvis vores site er på engelsk hjemmeside, så hvis vi satte det tegnsæt i latinske bogstaver ISO-8859-1 på strækningen, som følger:
META Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
2. Filtrering og begrænse alle input data
Dette er for at forhindre cross-site script Den anden metode til angreb under logge ind Lad ikke disse specialtegn er indtastet. Derfor kan vi tilføje avascript procedurer onSubmit måde at opnå denne funktion. I dette tilfælde er grænsen kan vi kun indtaste 15 tegn. Dette vil forhindre de lange script input.
I Knowledge Base-artikel QA252985 Denne bog giver en kort Microsoft avascript for at fuldføre inputdata filtrering. Vi har også indført under den særlige omstændigheder i denne kode for vores eksempel, såsom:
funktion checkForm () (
document.forms [0]. userName.value = _
RemoveBad (document.forms [0]. UserName.value);
return true;
)
/ / MICROSOFT''S CODE
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g ,"");
tilbagevenden strTemp;
)
Ved hjælp af denne metode, kan du filtrere dem, der i input karakter:
% [] (); & + - "''()
3. Brug af HTML og URL-kodning
Selv om anvendelse af filtre og begrænsninger, der er nævnt ovenfor, input metode er at anvende et meget vigtigt middel til at forsvare sig, men det var min måde at sådanne angreb via mail eller magtesløs. Jeg sætter webadresseparametre direkte på meddelelsen. På baggrund af dette har vi nødt til at tage en mere robust sikkerhedsforanstaltninger. Hvis vi bruger ASP, relativt set, til at løse en hel del lettere. Så længe det samlede beløb for dynamisk genererede HTML-sider og URL-kodning på linjen. Sagen for vort eksempel, skal du indtaste den første side af omdirigeringswebadresse vi foretaget følgende ændringer:
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Response.Cookies ("brugernavn"))
Vi sluttede i gennemførelsen af siden:
strUserName = Server.HTMLEncode (Request.QueryString ("brugernavn"))
Og
strUserName = Server.HTMLEncode (Request.Form ("brugernavn"))
Microsoft anbefaler til alle input og output af dynamiske sider skal kodes. Selv i databasen data ind og ud, så bør vi. For at du stort set kan undgå cross-site script angreb.
For at nå disse bør tilføjes Page1.asp:
% @ Language = VBScript%
% Hvis Request.Cookies ("brugernavn") "" Så
''Omdiriger hvis påvise cookie
Dim strRedirectUrl
strRedirectUrl = "page2.asp? brugernavn ="
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Request.Cookies ("brugernavn"))
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
META Http-equiv="Content-Type"content="text/html; charset=ISO-8859-1"
TITLE MyNiceSite.com Home Page / TITLE
/ HEAD
SCRIPT LANGUAGE="avascript"
! -
funktion checkForm () (
document.forms [0]. userName.value =
RemoveBad (document.forms [0]. UserName.value);
return true;
)
fil //*********************************************** *******
file / / Programmør: IKKE oprindelige kode - KOMMER FRA MICROSOFT
file / / Kode Kilde: Microsoft Knowledge Base-artikel Q25z985
file / / Beskrivelse: Fjerner dårlig tegn.
fil //*********************************************** *******
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g, "");
tilbagevenden strTemp;
)
fil //--
/ SCRIPT
BODY
BR
H2 MyNiceSite.com / H2
BR
FORM Method="post"action="page2.asp" onsubmit="return checkForm();"
Indtast dit MyNiceSite.com brugernavn:
INPUT Type="text"name="userName" width="10" maxwidth="10"
INPUT Type="submit"name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End if%
Page2.asp Canada såsom:
% @ Language = VBScript%
% Dim strUserName
Hvis Request.QueryString ("brugernavn ") "" Så
strUserName = Server.HTMLEncode (Request.QueryString ("brugernavn"))
Else
Response.Cookies ("brugernavn") = Request.Form ("brugernavn")
strUserName = Server.HTMLEncode (Request.Form ("brugernavn"))
End Hvis%
HTML
HEAD
META Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
/ HEAD
BODY
h3 Align="center" Hej: % = strUserName% / H3
/ BODY
/ HTML
Nu på grund af dette angreb var en effektiv kontrol. At disse etiketter og Script af ondsindet kode, de er i skriftlig form er opstået, som vist nedenfor:
Vi har også øge IIS komponenten bruges til at filtrere alle en dynamisk input fra specialtegn. For dem, der har gode hjemmesider, at denne fremgangsmåde forhindre cross-site script piratangreb let. Vi kan blokere denne kontrol ANMODNING mål fra ASP sider, der kan dannes en cookie, at indholdet af anmodningen strengen og procedurer påvise:
Vi kan også skrive log-filen gennem metoden af de statistiske data til at tilslutte komponenterne. Når en kunde træder en ulovlig karakter, vil denne komponent tager sin IP-adresse og tidspunkt. Detaljer er Doug dekan Roll din egen IIS Ansøgning om ASPToday artikel.
Vi behøver blot at tage nogle enkle Buju effektivt kan hindre cross-site script angreb. Bortset fra de ovennævnte tre metoder, også Microsoft og CERT anbefales kraftigt at anvende en proces, de kalder "sanity check"-strategi. For eksempel, hvis der nu alligevel er kun tilladt at indtaste den digitale indgang vinduet, og vi giver det at være en begrænset, så kun 0-9 digitale indgang. Microsoft og CERT bruges til at indtaste karakterer i denne begrænsede tilgang end adskilt benyttelse af filtrering specialtegn er meget bedre. Vedtog disse foranstaltninger, kan du lade dem, der besøger dit websted, når kunderne besøger dit websted, der skal beskyttes.
For det andet, at fra hackere angreb vores browser metode:
Når du surfer på nettet på det rigtige tidspunkt, hvordan man undgår at blive angrebet? Microsoft og CERT anbefaler ikke at røre vilde gæt i online Hu. På baggrund af denne, som er opkaldt PC Magazine John Dvorack en kolonne lavet af en interessant svar. Han mener, at dette er Microsofts overlagt handlinger: Det er at skræmme folk, der surfer på disse websteder sikkert at besøge, såsom AOL og MSN.com websted.
I vores eksempler, du selv er ikke online på tilfældig vandrer, kan vi ikke undgå at blive i Internet hackerangreb. Ironisk nok er de fleste af risikoen kommer fra vores mest betroede websteder. Hvis du ønsker side må ikke spørgsmål, du skal ikke downloade noget dynamisk indhold eller cookie. Forudsige nærmere oplysninger henvises til din browser information.
Microsoft har ligeledes advaret om, at browseren skal du angive Active Script og strengt begrænse staten Email er også indstillet til strengt begrænse modtage mode. Klik på linket i beskeden, skal du huske at være forsigtig. For yderligere oplysninger henvises til en navngiven Microsoft''s Knowledge Base-artikel Q253117 bog. Som en sikkerhedsforanstaltning, du hellere være lidt mere online oplevelse og tid til at være forsigtig.
Konklusion
Hvis du er en tidligere UNIX program udvikler, kan du ikke vide, hvad betyder, at cross-site script. Du ved, at mange site managers logget på brugernavn og adgangskode blev rod, rod. Samme antal database administrator navn og kodeord blev sa, password. Du ved webzine (såsom Phrack og Alt2600), efter de metoder, de leverer trin for trin giver dig mulighed for at kende en server sårbarhed. I denne hardware, du også vide, at mange af stedet database server og web-serveren ikke er selvbeskyttelse. Men erfaringen fra en hacker, skal maskinen lammelse.
Selv om det er nemt at tage for at forhindre systemet fra hackere foranstaltninger, men vores system er udsat for hacker har været før. Vi har al mulig grund til at tro, at næste år vil der være nogle nye sikkerhedsproblemer. Mr. John Howard i CERT virksomheden under vejledning har været nævnt i en artikel: "Ifølge denne undersøgelse, hvor hver domænenavn på internettet hjemmeside gennemsnitligt år, angreb fra hackere mindst én gang. "
På serverne. Selv om det kun én sådan angreb er uudholdelig Cross Site Script angreb er en anden måde hackere kan bruge. Men vi behøver blot de ovennævnte enkel behandling kan forebygge forekomsten af denne form for angreb.
Når vi tænker på et tidspunkt, hvor hackere, hackere har tendens til at lide dette portræt: en enspænder, stille og roligt ind andre folks servere, at ødelægge eller stjæle andre folks hemmeligheder. Måske han vil ændre vores hjemmeside, vil uretmæssige krav stjæle kunder kreditkortnumre og passwords. Desuden vil den hackerangreb til at besøge vores hjemmeside kunder. Samtidig blev vores server medgerningsmanden. Microsoft kalder det angreb som en "cross-site script" angreb. De fleste af disse angreb fandt sted i dynamisk genereret webside på det rigtige tidspunkt, men det hacker's mål er ikke at dit websted, men du besøge webstedet kunder.
Beskrivelse af cross-site script angreb
I en bog med titlen ADVISORY CA--2000-02 af bladet, advarede CERT os: Hvis serveren på kundens input ikke er en effektiv kontrol, vil ondsindede hackere indtaste nogle HTML-kode, når disse HTML SCRIPT program kode input bruges, kan de bruge den til at udføre sabotage, såsom indføjelsen af nogle offensive billeder eller lyd, osv., men også kan forstyrre kunden ret website.
Vi ved, at nogle venner havde været tilskyndet til at frigøre en række mistænkelige websteder, de får kun 10 til 20 lille vindue, er disse vinduer ofte ledsaget af dannelsen af det fejlslagne JAVA eller avascript Security button, er dette kendt som mus fælde. Luk vinduet er forgæves, når vi lukker et vindue, vil et andet vindue dukker op et par 10. Dette sker ofte, når administratoren ikke i Hou Fasheng. Hackere bruger musen begivenhed er cross-site angreb metoder SCRIPT eksempel på kunden.
SCRIPT tags og ondskabsfuld fortræd er ikke enkle, kan de endda stjæle oplysninger og ødelagde systemet. Ikke en klog eller endda smart hackere er i stand til at blande sig med eller ændre server ved hjælp af SCRIPT datainput. Script-kode kan også angribe ved hjælp af klient-systemer, gøre skade på din harddisk. Og du ved, når du bruger server side, hackere SCRIPT er også et sikkert sted, hvor din server kører til! Hvis kunden et brev på din server er identificeret, den samme tillid til, at de vil SCRIPT skadelig kode. Selv denne kode i form af script eller objekt server fra hackere.
Selv med en firewall (SSL) ikke kan forhindre cross-site angreb SCRIPT. Det er fordi, hvis udstyret genererer skadeligt script-kode bruger også SSL, SSL-server, kan vi ikke identificere koden til. Vi har at gøre med kunden har tillid til så hånden over hackere det? Og eksistensen af en sådan skade, gøre det muligt tab af omdømme dit websted.
For det første cross-site angreb SCRIPT eksempel:
Ifølge CERT's oplysninger, generelt dynamisk input, der er disse former: URL parametre, form elementer, COOKISE og anmodninger om oplysninger. Lad os analysere, de eneste to sider af hjemmesiden, er hjemmesiden hedder: MYNICESITE.COM. Første bruge en formular eller COOKIE at opnå brugernavn:
% @ Language = VBScript%
% Hvis Request.Cookies ("brugernavn") "" Så
Dim strRedirectUrl
strRedirectUrl = "page2.asp? brugernavn ="
strRedirectUrl = strRedirectUrl & Response.Cookies ("brugernavn")
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
TITLE MyNiceSite.com Home Page / TITLE
/ HEAD
BODY
H2 MyNiceSite.com / H2
FORM Method="post" action="page2.asp"
Indtast dit MyNiceSite.com brugernavn:
INPUT Type="text" name="userName"
INPUT Type="submit" name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End If%
Den anden side returnerer brugernavnet at byde:
% @ Language = VBScript%
% Dim strUserName
Hvis Request.QueryString ("brugernavn") "" Så
strUserName = Request.QueryString ("brugernavn")
Else
Response.Cookies ("brugernavn") = Request.Form ("brugernavn")
strUserName = Request.Form ("brugernavn")
End Hvis%
HTML
HEAD / HEAD
BODY
h3 Align="center" Hej: % = strUserName% / H3
/ BODY
/ HTML
Når du indtaster tekst normal ofte, alt er normalt. Hvis du indtaster Script koden: script alert (''Hej .''; / script , vil avascript advarsel pop up:
Næste gang du besøger denne advarsel vises det samme; Dette skyldes, at script-kode i din tid efter første besøg havde været at opholde sig i en cookie. Dette er et simpelt eksempel på cross-site-angreb.
Hvis du tror, dette er et særligt tilfælde, kan du også ønsker at søge andre steder på nettet, personligt prøve. Jeg har nogle store offentlige steder, uddannelsesmæssige sites og kommercielle sites testet, nogle af dem mere, end hvad situationen der, jeg selv fundet et site jeg ofte bruger kreditkort er faktisk på input uden filtrering, Tænk virkelig forfærdeligt.
For det andet, der anvender E-Mail til Cross Site Script Attack
Cross-site script angreb anvendes i listen server, usenet-servere og postservere er særligt sårbare over for komme. Det følgende er et eksempel til at forklare MyNiceSite.com site. Da du ofte bruge denne hjemmeside, at dens indhold ikke sætte det ned, du elsker, så du ubevidst sætter browseren i en dynamisk web-indhold er altid tillid denne indstilling.
MyNiceSite.com site er altid gennem salg af tegningsretter e-mail adresse på deres Email breve for at opnå indtægter, der er i sandhed en meget god idé. Så jeg købte det i en postkasse adresse. Og lavet en masse mail til dig. I brevet, fortæller jeg dig så hurtigt som muligt at besøge denne hjemmeside og tjekke din konto ved hjælp af den seneste situation. For at give dig en bekvem, jeg også lavet et link til dette brev. Jeg vil samkøre URL, brugernavn parameter i script-kode for at slikke tilføjet. Nogle kunder uforvarende klikker på dette link, som er på min, når (billedet), og jeg har også nydt godt af:
Det er dette arbejde, som når du klikker på dette link efter link i script-kode vil blive brugt til at guide din browser til at hente min avascript programmet og udføre det. Min Script tjekker til dig ved hjælp IE browser, for at fortsætte til download ActiceX kontrol particularlyNasty.dll. Fordi før du har indholdet af denne hjemmeside, der altid er sikker, så mit script-kode og Active kontrol på din maskine kan køre frit.
3, ActiveX angreb beskrivelse
Ved drøftelsen af ActiveX, CERT og Microsoft ikke henvises til cross-site script metode til den risiko, som. W3C I "Sikkerhedsrådet Ofte stillede spørgsmål af ActiveX sikkerhedsspørgsmål foretaget på en mere detaljeret beskrivelse. Java-applet om kontrol af systemet er strengt begrænset. Søn udvikling, når den bestemmer, at kun de, der ikke udgør nogen trussel mod sikkerheden i det system fik lov til at drive.
På den anden side er ActiveX om driften af systemet ikke er strengt begrænset. Men hvis man er blevet hentet, kan du installere den eksekverbare som gør, hvad de ønskede at gøre det samme. IE browser for denne funktion er også visse begrænsninger, som de usikre stedet, og i dens standard indstillinger vil ikke give dig mulighed for at downloade eller give dig en advarsel prompt. Er baseret på udviklingen af ActiveX for virksomheder som VeriSign Inc., har de givet nummereret ActiveX kontroller. Når du downloader efter det tidspunkt, kontrol, vil IE browser giver dig en advarsel og viser graden af sin troværdighed slyngel. Af brugeren bestemme, om at tro denne kontrol. Som et system sikkerhed øges.
Men for de brugere, der ikke har meget erfaring, blev de ofte ubevidst, til de oprindelige indstillinger ændres for at tillade, at disse kontroller uden at spørge på den downloadede. Desuden novice a, selv i tilfælde af en hurtig at downloade uden at tænke vil ikke gøre nogen mærke, hvori kontrollerne. I vores eksempler, fordi du har tillid til webstedet, ændre browserindstillinger, så, ActiveX kontroller uden forudgående rykkerskrivelser hente, og ubevidst på din maskine begynder at køre .
4, 16 hex kodet ActiveX Script angreb
Dårlige hensigter bør skelne mellem etiket og scriptet er meget vanskeligt. Script kan også være i form af 16 hex skjule sig. Lad os se på de følgende E-mail dette eksempel skal du? Det er i form af 16 hex er sendt ud:
Det er næsten en fuldstændig meddelelse, som indeholder en 16 hex forfalsket URL parametre: afsender = mynicesite.com. Når brugeren klikker på linket, brugerens browser vil begynde den første sag henviste direkte til forarbejdning af pop-up advarsel vindue.
Del II: Cross Site Script Attack Kriminalpræventive
For det første hvordan man undgår at blive cross-site server angreb Script
Heldigvis forhindrer cross-site angreb Script teknologi perfektionere. Flere måder dette kan træffes for at forhindre cross-site angreb Script:
1. På dynamisk genererede sider er kodede tegn
2. At filtrere og begrænse udledning
3. Brug af HTML og URL-kodning
1. På dynamisk genererede sider er kodede tegn
Du skal først bruge er dynamisk genererede sider om tegnkodning, du behøver at gøre det, eller hacker vil sandsynligvis ændre dine tegnsæt og nemt via din linje i forsvaret. Hvis vores site er på engelsk hjemmeside, så hvis vi satte det tegnsæt i latinske bogstaver ISO-8859-1 på strækningen, som følger:
META Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
2. Filtrering og begrænse alle input data
Dette er for at forhindre cross-site script Den anden metode til angreb under logge ind Lad ikke disse specialtegn er indtastet. Derfor kan vi tilføje avascript procedurer onSubmit måde at opnå denne funktion. I dette tilfælde er grænsen kan vi kun indtaste 15 tegn. Dette vil forhindre de lange script input.
I Knowledge Base-artikel QA252985 Denne bog giver en kort Microsoft avascript for at fuldføre inputdata filtrering. Vi har også indført under den særlige omstændigheder i denne kode for vores eksempel, såsom:
funktion checkForm () (
document.forms [0]. userName.value = _
RemoveBad (document.forms [0]. UserName.value);
return true;
)
/ / MICROSOFT''S CODE
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g ,"");
tilbagevenden strTemp;
)
Ved hjælp af denne metode, kan du filtrere dem, der i input karakter:
% [] (); & + - "''()
3. Brug af HTML og URL-kodning
Selv om anvendelse af filtre og begrænsninger, der er nævnt ovenfor, input metode er at anvende et meget vigtigt middel til at forsvare sig, men det var min måde at sådanne angreb via mail eller magtesløs. Jeg sætter webadresseparametre direkte på meddelelsen. På baggrund af dette har vi nødt til at tage en mere robust sikkerhedsforanstaltninger. Hvis vi bruger ASP, relativt set, til at løse en hel del lettere. Så længe det samlede beløb for dynamisk genererede HTML-sider og URL-kodning på linjen. Sagen for vort eksempel, skal du indtaste den første side af omdirigeringswebadresse vi foretaget følgende ændringer:
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Response.Cookies ("brugernavn"))
Vi sluttede i gennemførelsen af siden:
strUserName = Server.HTMLEncode (Request.QueryString ("brugernavn"))
Og
strUserName = Server.HTMLEncode (Request.Form ("brugernavn"))
Microsoft anbefaler til alle input og output af dynamiske sider skal kodes. Selv data i databasen og fjerner det samme bør være tilfældet. For at du stort set kan undgå cross-site script angreb.
For at nå disse bør tilføjes Page1.asp:
% @ Language = VBScript%
% Hvis Request.Cookies ("brugernavn") "" Så
''Omdiriger hvis påvise cookie
Dim strRedirectUrl
strRedirectUrl = "page2.asp? brugernavn ="
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Request.Cookies ("brugernavn"))
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
META Http-equiv="Content-Type"content="text/html; charset=ISO-8859-1"
TITLE MyNiceSite.com Home Page / TITLE
/ HEAD
SCRIPT LANGUAGE="avascript"
! -
funktion checkForm () (
document.forms [0]. userName.value =
RemoveBad (document.forms [0]. UserName.value);
return true;
)
fil //*********************************************** *******
file / / Programmør: IKKE oprindelige kode - KOMMER FRA MICROSOFT
file / / Kode Kilde: Microsoft Knowledge Base-artikel Q25z985
file / / Beskrivelse: Fjerner dårlig tegn.
fil //*********************************************** *******
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g, "");
tilbagevenden strTemp;
)
fil //--
/ SCRIPT
BODY
BR
H2 MyNiceSite.com / H2
BR
FORM Method="post"action="page2.asp" onsubmit="return checkForm();"
Indtast dit MyNiceSite.com brugernavn:
INPUT Type="text"name="userName" width="10" maxwidth="10"
INPUT Type="submit"name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End if%
Page2.asp Canada såsom:
% @ Language = VBScript%
% Dim strUserName
Hvis Request.QueryString ("brugernavn ") "" Så
strUserName = Server.HTMLEncode (Request.QueryString ("brugernavn"))
Else
Response.Cookies ("brugernavn") = Request.Form ("brugernavn")
strUserName = Server.HTMLEncode (Request.Form ("brugernavn"))
End Hvis%
HTML
HEAD
META Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
/ HEAD
BODY
h3 Align="center" Hej: % = strUserName% / H3
/ BODY
/ HTML
Nu på grund af dette angreb var en effektiv kontrol. At disse etiketter og Script af ondsindet kode, de er i skriftlig form er opstået, som vist nedenfor:
Vi har også øge IIS komponenten bruges til at filtrere alle en dynamisk input fra specialtegn. For dem, der har gode hjemmesider, at denne fremgangsmåde forhindre cross-site script piratangreb let. Vi kan blokere denne kontrol ANMODNING mål fra ASP sider, der kan dannes en cookie, at indholdet af anmodningen strengen og procedurer påvise:
Vi kan også skrive log-filen gennem metoden af de statistiske data til at tilslutte komponenterne. Når en kunde træder en ulovlig karakter, vil denne komponent tager sin IP-adresse og tidspunkt. Detaljer er Doug dekan Roll din egen IIS Ansøgning om ASPToday artikel.
Vi behøver blot at tage nogle enkle Buju effektivt kan hindre cross-site script angreb. Bortset fra de ovennævnte tre metoder, også Microsoft og CERT anbefales kraftigt at anvende en proces, de kalder "sanity check"-strategi.例如,假设有个输入窗口只允许输入数字,我们就给它做个限定,只允许0-9数字的输入。微软和CERT所采用的这种对输入的字符进行限定的办法要比单独的采用过滤特殊字符要好得多。采用了这些措施后你就能让那些参观你网站的客户在访问你网站时受到保护。
二、免受黑客攻击我们浏览器方法:
当你在网上漫游的时侯,怎样来避免受到攻击呢?微软和CERT建议不要在网上胡碰乱撞。针对这种情况,PC杂志一个栏目的名叫John Dvorack作者作了一个饶有兴趣的回答。他认为这是微软公司一起有预谋的行为:就是用来恐吓网上冲浪的人到那些安全的站点去浏览,如美国在线和MSN.com网站。
在我们所举的例子中,即使你不在网上胡乱游荡,也不能避免在网上遭到黑客的袭击。具有讽刺意义的是,大多数的危险都来自于我们最信任的网站。如果要让网站一定不出问题,你只好不下载任何动态内容或者任何cookie。预知详情请参阅浏览器的相关资料。
微软也警告你们应把浏览器的Active Script设置成严格限制的状态并把Email也设成严格限制的接收模式。在点击邮件中的链接时,一定要小心。如需进一步了解情况请参阅一本名叫<<Microsoft''s Knowledge Base Article Q253117>>的书。为了以防万一,你最好是多一点上网经验,并且时刻要小心谨慎。
结论
如果你是以前的UNIX程序开发人员,你也许不会知道跨站script意谓着什么。你知道许多站点的管理人员登录的用户名和密码分别为root,root.同样许多数据库管理员的名称和密码分别为sa,password。你也知道Webzine(如Phrack 和 Alt2600),依据他们所提供的方法能让你一步步地知道某台服务器的弱点。在这种硬件上,你也知道许多网站的数据库服务器和web服务器都没有进行自我保护。一但遭遇黑客,机器就得瘫痪。
尽管我们很容易采取防止系统受到黑客的攻击的措施,但我们的系统是一直暴露在黑客面前的。我们完全有理由相信下一年还会出现一些新的安全漏洞。在CERT公司John Howard先生指导下完成的一篇论文中曾提到:"跟据目前的研究显示,每个在英特网上具有域名的网站平均一年被黑客至少攻击一次。"
对服务器来说那怕只是一次这种攻击也是不能承受的。跨站Script攻击是黑客可采用的另一种方法。但我们只要进行以上所说的一些简单的处理就能防止这种形式攻击的发生。