När vi tänker på en tid då hackare, hackers tenderar att gilla detta porträtt: en ensamvarg, stilla in andras servrar, att förstöra eller stjäla andras hemligheter. Han kanske kommer att ändra vår hemsida, kommer bedrägliga anspråk stjäla kunder kreditkortsnummer och lösenord. Dessutom kommer det hackerattack att besöka vår webbplats kunder. Samtidigt blev vår server hans medbrottsling. Microsoft kallar denna attack som en "cross-site skript" attacker. De flesta av dessa attacker ägde rum i dynamiskt genererade webbplats på rätt tid, men hackares mål är inte att din webbplats, men besök webbplatsen för kunden.
Beskrivning av cross-site skript attack
I en bok med titeln ADVISORY CA--2000-02 av tidningen, varnade CERT oss: Om den server på kundens input inte är effektiv kontroll skall illvilliga hackare in några HTML-kod, när dessa HTML SCRIPT programkod ingången används, kan de använda den för att utföra sabotage, såsom införandet av vissa kränkande bilder eller ljud etc., men också kan störa kunden rätt webbplats.
Vi vet att några vänner skulle ha uppmuntrats att frigöra ett antal misstänkta webbplatser, de får endast 10 till 20 små fönster, dessa fönster åtföljs ofta av bildandet av fel på JAVA eller avascript säkerhet knapp, detta kallas mus fälla. Stäng fönstret är förgäves, då vi stänga ett fönster, kommer ett annat fönster poppa upp ett par 10. Detta händer ofta när förvaltaren inte i Hou Fasheng. Hackers använder musen händelsen är cross-site attack metoder SCRIPT exempel på kunden.
SCRIPT-taggar och illvillig bus är inte enkelt, kan de även stjäla information och förstörde systemet. Är inte ett smart eller ens smarta hackare kan påverka eller ändra servern med hjälp av SCRIPT indata. Script kan också angripa med hjälp av klientsystem, göra skada på din hårddisk. Och vet du, när du använder serversidan är hackare SCRIPT också en säker plats där servern körs till! Om kunden ett brev på servern identifieras samma förtroende att de kommer SCRIPT skadlig kod. Även denna kod i form av SCRIPT eller OBJECT servern från hackare.
Även med en brandvägg (SSL) kan inte förhindra cross-site attacker script. Det beror på om utrustningen genererar skadlig skriptkod också använder SSL, SSL-server som vi inte kan identifiera den koden till det. Vi har att göra med kunden tillförlitliga platser sedan lämna över hackare det? Och förekomsten av sådana skador, gör eventuell förlust av anseende din webbplats.
För det första cross-site attacker SCRIPT exempel:
Enligt CERT: s uppgifter har dynamisk ingång i allmänhet dessa former: URL parametrar, utgör bärande inslag, COOKISE och begär uppgifter. Låt oss analysera de enda två sidor av webbplatsen, är webbplatsen heter: MYNICESITE.COM. Först använda ett formulär eller cookie för att få användarnamn:
% @ Language = VBScript%
% If Request.Cookies ("användarnamn") "" Då
Dim strRedirectUrl
strRedirectUrl = "page2.asp? användarnamn ="
strRedirectUrl = strRedirectUrl & Response.Cookies ("användarnamn")
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
TITLE MyNiceSite.com Hemsida / TITLE
/ HEAD
BODY
H2 MyNiceSite.com / H2
form Method="POST" action="page2.asp"
Ange ditt MyNiceSite.com användarnamn:
input Type="text" name="userName"
input Type="submit" name="Submit" value="submit"
/ FORM
/ BODY
/ HTML
% End If%
Den andra sidan returnerar användarnamnet välkomna:
% @ Language = VBScript%
% Dim strUserName
Om Request.QueryString ("användarnamn") "" Då
strUserName = Request.QueryString ("användarnamn")
Else
Response.Cookies ("användarnamn") = Request.Form ("användarnamn")
strUserName = Request.Form ("användarnamn")
End If%
HTML
HEAD / HEAD
BODY
h3 Align="center" Hej: % = strUserName% / h3
/ BODY
/ HTML
När du skriver text normal ofta, allt är normalt. Om du anger Script kod: script alert (''Hej .''; / script kommer avascript varningsetikett pop up:
Nästa gång du besöker, detta varningsmärke visas samma, Detta beror på att Script-koden på din tid efter det första besöket hade varit att bo i en cookie. Detta är ett enkelt exempel på cross-site attacker.
Om du tror att detta är ett specialfall, kan du också titta på andra ställen på nätet, personligen försöka. Jag har några stora offentliga platser, utbildnings-platser och kommersiella webbplatser testade, vissa av dem gör mer än vad situationen där jag även hittade en sida som jag ofta använder kreditkort faktiskt på bidrag utan filtrering, tycker verkligen hemskt.
För det andra använder e-post till Cross Site Script Attack
Cross-site skript attack används i förteckningen för servern, servrar Usenet och e-postservrar är särskilt utsatta för komma. Följande är ett exempel för att förklara MyNiceSite.com webbplats. Eftersom du ofta surfa på hemsidan, gör om sitt innehåll inte ner det du älskar, så att du omedvetet lägger webbläsaren till ett dynamiskt webbinnehåll är alltid lita på den här inställningen.
MyNiceSite.com sida är alltid genom försäljning av abonnemang e-postadress till sina e-brev för att få intäkter, som faktiskt är en mycket god idé. Så jag köpte den i en e-postadress. Och gjorde en hel del mail till dig. I brevet, säger jag dig så snart som möjligt att besöka webbplatsen och kontrollera ditt konto med den senaste situationen. För att ge dig en bekväm, jag gjorde även en länk till denna skrivelse. Jag skulle koppla URL, användarnamn parameter i skriptet kod för att slicka till. Vissa kunder ovetande klicka på denna länk, det är på min då (bilden), och jag har också dragit nytta av:
Det är detta arbete, när du klickar på denna länk, efter gång, länken i skriptet koden kommer att användas för att styra din webbläsare för att ladda hem min avascript program och exekvera det. Min Script kontroller för att du använder IE webbläsare, för att fortsätta att ladda ner ActiceX kontroll particularlyNasty.dll. Eftersom innan du har innehållet på denna webbplats som alltid är säkert, så mina script och aktiva kontroller på din dator kan köra fritt.
3, ActiveX-attack beskrivning
När vi diskuterar ActiveX, CERT och Microsoft ingen hänvisning till cross-site skript metod för den risk som. W3C I "The Security Vanliga frågor av ActiveX-säkerhetsfrågor gjordes på en mer detaljerad beskrivning. Java-applet om kontroll av systemet är strikt begränsad. Sön utveckling när det föreskrivs att endast de som utgör något hot mot säkerheten i systemet tilläts att driva verksamheten.
Å andra sidan är ActiveX på driften av systemet inte strikt begränsat. Men om en har laddats ner kan du installera den körbara som gör vad de ville göra samma sak. IE webbläsare för denna funktion är också att vissa begränsningar, som de osäkra platsen, i standardinställningarna kommer inte att tillåta dig att ladda ner eller ge dig en varning snabb. Bygger på utveckling av ActiveX för företag som VeriSign Inc., har de gett numrerade ActiveX-kontroller. När du laddar ner efter den tid som kontroll, kommer IE webbläsare ger dig en varning och visar graden av sin trovärdighet skurk. Genom att användaren besluta om att anta denna kontroll. Som ett system säkerhet ökar.
Men för de användare som inte har mycket erfarenhet, de var ofta omedvetet, till de ursprungliga inställningarna ändras så att dessa kontroller utan påminnelser på den nedladdade. Dessutom har en nybörjare, även i fråga om en uppmaning att ladda ner utan att tänka kommer att lämna något märke där kontrollerna. I exemplet har vi, eftersom du litar på platsen, ändrade inställningar i webbläsaren så, ActiveX-kontroller utan påminnelser att ladda ner, och omedvetet på din dator börjar löpa .
4, 16 hex kodat ActiveX Script attack
Dåliga avsikter bör skilja mellan etiketten och skriften är mycket svårt. Script kan också i form av 16 hex gömma sig. Låt oss titta på följande E-mail detta exempel tack? Det är i form av 16 hexadecimala skickas ut:
Det är nästan ett komplett meddelande, som innehåller ett 16 hex förfalskade adressparametrar: avsändare = mynicesite.com. När användaren klickar på länken, användarens webbläsare startar det första fall som avses direkt till behandling av popup-varning fönster.
Del II: Cross Site Script Attack Brottsförebyggande
Först, hur man undviker att cross-site server attacker Script
Lyckligtvis är att förhindra cross-site attack Script teknik finslipa. Flera sätt detta kan vidtas för att förhindra cross-site attacker Script:
1. På dynamiskt skapade sidor är kodade tecken
2. Vill filtrera och begränsa tillförsel
3. Användning av HTML och URL-kodning
1. På dynamiskt skapade sidor är kodade tecken
Du först måste använda är dynamiskt skapade sidor om teckenkodning, du måste göra det, eller hackare kan ändra teckenuppsättning och enkelt via din försvarslinjen. Om vår webbplats är på engelska hemsida, så om vi sätter teckenkodning till latinska bokstäver enligt ISO-8859-1 på linjen, enligt följande:
meta Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
2. Filtrering och begränsa alla indata
Detta för att förhindra cross-site Script Den andra metoden för anfall under logga in Låt inte dessa specialtecken införs. Därför kan vi lägga avascript förfaranden onsubmit sätt att utföra denna funktion. I detta fall begränsar vi kan bara ange 15 tecken. Detta kommer att förhindra dessa långa skriften ingång.
I Knowledge Base-artikel QA252985 Den här boken ger en kort Microsoft avascript för att fullborda den indata filtrering. Vi introducerade också under de särskilda omständigheterna i detta koden för vårt exempel, såsom:
funktion checkForm () (
document.forms [0]. userName.value = _
RemoveBad (document.forms [0]. UserName.value);
return true;
)
/ / MICROSOFT'-koden
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g ,"");
återvända strTemp;
)
Med denna metod kan du filtrera dem som ingår i den ingående karaktär:
% [] (); & + - "''()
3. Användning av HTML och URL-kodning
Även om användningen av filter och begränsningar som nämns ovan, är den ingående metoden att använda ett mycket viktigt medel att försvara sig, men det var mitt sätt att sådana attacker per post eller maktlösa. Jag satte adressparametrar direkt på budskapet. Mot bakgrund av detta vi måste ta en mer robust säkerhetsåtgärder. Om vi använder ASP, relativt sett, för att lösa mycket enklare. Så länge den sammanlagda för dynamiskt skapade HTML-sidor och URL-kodning på linjen. Argumenten för vårt exempel anger första sidan av omdirigera URL vi gjort följande förändringar:
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Response.Cookies ("användarnamn"))
Vi gick med i genomförandet av sidan:
strUserName = Server.HTMLEncode (Request.QueryString ("användarnamn"))
Och
strUserName = Server.HTMLEncode (Request.Form ("användarnamn"))
Microsoft rekommenderar för alla in-och utmatning av dynamiska sidor ska kodas. Även uppgifterna i databasen och ta bort Detsamma bör gälla. Så att du till stor del kan undvika cross-site skript attack.
För att uppnå dessa bör läggas till i Page1.asp:
% @ Language = VBScript%
% If Request.Cookies ("användarnamn") "" Då
''Redirect om upptäcka cookie
Dim strRedirectUrl
strRedirectUrl = "page2.asp? användarnamn ="
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Request.Cookies ("användarnamn"))
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
META Http-equiv="Content-Type"content="text/html; charset=ISO-8859-1"
TITLE MyNiceSite.com Hemsida / TITLE
/ HEAD
SCRIPT LANGUAGE="avascript"
! -
funktion checkForm () (
document.forms [0]. userName.value =
RemoveBad (document.forms [0]. UserName.value);
return true;
)
fil //*********************************************** *******
fil / / Programmerare: EJ ursprungliga koden - kommer från MICROSOFT
fil / / Kod Källa: Microsoft Knowledge Base-artikel Q25z985
fil / / Beskrivning: Tar bort dåliga tecken.
fil //*********************************************** *******
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g, "");
återvända strTemp;
)
fil //--
/ SCRIPT
BODY
BR
H2 MyNiceSite.com / H2
BR
form Method="post"action="page2.asp" onsubmit="return checkForm();"
Ange ditt MyNiceSite.com användarnamn:
INPUT Type="text"name="userName" width="10" maxwidth="10"
INPUT Type="submit"name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End if%
Page2.asp Kanada som:
% @ Language = VBScript%
% Dim strUserName
Om Request.QueryString ("användarnamn ") "" sedan
strUserName = Server.HTMLEncode (Request.QueryString ("användarnamn"))
Else
Response.Cookies ("användarnamn") = Request.Form ("användarnamn")
strUserName = Server.HTMLEncode (Request.Form ("användarnamn"))
End If%
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 av denna attack var en effektiv kontroll. Att dessa märken och Script av skadlig kod, de är i skriftlig form har utvecklats enligt nedan:
Vi ökar också IIS komponent som används för att filtrera alla en dynamisk insats från specialtecken. För dem som har bra hemsidor, för att denna strategi förhindra cross-site skript attacker kommit lätt. Vi kan blockera detta mål kontroll begäran från ASP-sidor, kan bilda, cookie, till innehållet i begäran strängen och förfaranden upptäcka:
Vi kan också skriva loggfilen genom metoden för de statistiska uppgifter som att ansluta komponenterna. När en kund in en olaglig karaktär, kommer denna komponent att notera sin IP-adress och tid. Detaljerna är Doug dekanus Roll egen IIS Ansökan om ASPToday artikel.
Vi behöver bara ta några enkla Buju kan effektivt förhindra cross-site skript attack. Förutom de ovan nämnda tre metoderna, Microsoft och CERT rekommenderas också att använda en process de kallar "förnuft check"-metoden. Anta till exempel att det bara får gå in i digital ingång fönster, och vi ger det vara en begränsad, vilket gör att endast 0-9 digital ingång. Microsoft och CERT används för inmatning av tecken av detta begränsade tillvägagångssätt än skild användning av filtrering specialtecken är mycket bättre. Antagit dessa åtgärder, kan du låta dem som besöker din webbplats när kunder besöker din webbplats som ska skyddas.
För det andra att hackare angripa våra webbläsare metod:
När du surfar på nätet i rätt tid hur man undviker att anfalla? Microsoft och CERT rekommenderar att inte röra vilda gissningar i online Hu. Mot bakgrund av detta, som heter PC Magazine John Dvorack en kolumn gjord av ett intressant svar. Han anser att detta är Microsofts överlagda handlingar: det är att skrämma människor som surfar på dessa webbplatser säkert att besöka, t.ex. AOL och MSN.com webbplats.
I vårt exempel, även om du inte är online slumpvis vandring, kan vi inte undvika att vara i Internet-attacker från hackers. Ironiskt nog kommer det mesta av risken från våra mest betrodda platser. Om du vill att sajten får inte fråga, har du inte ladda ner något dynamiskt innehåll eller någon kaka. Förutsäga detaljer, se informationen om din webbläsare.
Microsoft varnade också för att webbläsaren ska du in Aktivt Script och strikt begränsa tillståndet för e-post är också inställd på strikt begränsa de får läge. Klicka på länken i meddelandet, se till att vara försiktig. För ytterligare information hänvisas till en namngiven Microsoft''s Knowledge Base-artikel Q253117 bok. Som en försiktighetsåtgärd, skulle du vara bättre lite mer online erfarenhet och tid att vara försiktig.
Slutsats
Om du är en tidigare UNIX-program utvecklare kanske du vet vad innebär att cross-site skript. Du vet att många platschefer inloggade användarens namn och lösenord var roten, roten. Samma antal databasadministratör och lösenord var sa, lösenord. Du vet Webzine (såsom Phrack och Alt2600), enligt de metoder som de ger steg för steg gör att du kan känna en serverns sårbarhet. I denna hårdvara, ni vet också att många av platsen databasserver och webbserver är inte självförsvar. Men upplevelsen av en hacker, måste maskinen förlamning.
Även om det är lätt att ta för att hindra systemet från hackare åtgärder, men vårt system är utsatt för hacker har varit tidigare. Vi har all anledning att tro att nästa år kommer det att finnas några nya säkerhetsproblem. John Howard i CERT bolaget under ledning har nämnts i en artikel: "Enligt den aktuella studien, till varje domännamn på webbplatsen för genomsnittligt år, attacker från hackare minst en gång. "
På servrar, även om endast en sådan attack är outhärdlig. Cross Site Script attacker är ett annat sätt hackare kan använda. Men vi behöver bara de ovan nämnda enkel behandling kan förhindra uppkomsten av denna form av attack.
När vi tänker på en tid då hackare, hackers tenderar att gilla detta porträtt: en ensamvarg, stilla in andras servrar, att förstöra eller stjäla andras hemligheter. Han kanske kommer att ändra vår hemsida, kommer bedrägliga anspråk stjäla kunder kreditkortsnummer och lösenord. Dessutom kommer det hackerattack att besöka vår webbplats kunder. Samtidigt blev vår server hans medbrottsling. Microsoft kallar denna attack som en "cross-site skript" attacker. De flesta av dessa attacker ägde rum i dynamiskt genererade webbsidor i rätt tid men hackares mål är inte att din webbplats, men finns på webbplatsen för kunden.
Beskrivning av cross-site skript attack
I en bok med titeln ADVISORY CA--2000-02 av tidningen, varnade CERT oss: Om den server på kundens input inte är effektiv kontroll skall illvilliga hackare in några HTML-kod, när dessa HTML SCRIPT programkod ingången används, kan de använda den för att utföra sabotage, såsom införandet av vissa kränkande bilder eller ljud etc., men också kan störa kunden rätt webbplats.
Vi vet att några vänner skulle ha uppmuntrats att frigöra ett antal misstänkta webbplatser, de får endast 10 till 20 små fönster, dessa fönster ofta tillsammans med bildandet av fel på JAVA eller avascript säkerhet knapp, kallas det musen fälla. Stäng fönstret är förgäves, då vi stänger ett fönster, kommer ett annat fönster poppa upp ett par 10. Detta händer ofta när förvaltaren inte i Hou Fasheng. Hackers använder musen händelsen är cross-site attack metoder SCRIPT exempel på kunden.
SCRIPT-taggar och illvillig bus är inte enkelt, kan de även stjäla information och förstörde systemet. Inte ett smart eller till och med smarta hackare kan påverka eller ändra servern med hjälp av SCRIPT indata. Script kan också angripa med hjälp av klientsystem, göra skada på din hårddisk. Och vet du, när du använder serversidan är hackare SCRIPT också en säker plats där servern körs till! Om kunden ett brev på servern identifieras samma förtroende att de kommer SCRIPT skadlig kod. Även denna kod i form av SCRIPT eller OBJECT servern från hackare.
Även med en brandvägg (SSL) kan inte förhindra cross-site attacker script. Det beror på om utrustningen genererar skadlig skriptkod också använder SSL, SSL-server som vi inte kan identifiera den koden till det. Vi har att göra med kunden tillförlitliga platser sedan lämna över hackare det? Och förekomsten av sådana skador, gör eventuell förlust av anseende din webbplats.
För det första cross-site attacker SCRIPT exempel:
Enligt CERT: s uppgifter har dynamisk ingång i allmänhet dessa former: URL parametrar, utgör bärande inslag, COOKISE och begär uppgifter. Låt oss analysera de enda två sidor av webbplatsen, är webbplatsen heter: MYNICESITE.COM. Först använda ett formulär eller cookie för att få användarnamn:
% @ Language = VBScript%
% If Request.Cookies ("användarnamn") "" Då
Dim strRedirectUrl
strRedirectUrl = "page2.asp? användarnamn ="
strRedirectUrl = strRedirectUrl & Response.Cookies ("användarnamn")
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
TITLE MyNiceSite.com Hemsida / TITLE
/ HEAD
BODY
H2 MyNiceSite.com / H2
form Method="POST" action="page2.asp"
Ange ditt MyNiceSite.com användarnamn:
input Type="text" name="userName"
input Type="submit" name="Submit" value="submit"
/ FORM
/ BODY
/ HTML
% End If%
Den andra sidan returnerar användarnamnet välkomna:
% @ Language = VBScript%
% Dim strUserName
Om Request.QueryString ("användarnamn") "" Då
strUserName = Request.QueryString ("användarnamn")
Else
Response.Cookies ("användarnamn") = Request.Form ("användarnamn")
strUserName = Request.Form ("användarnamn")
End If%
HTML
HEAD / HEAD
BODY
h3 Align="center" Hej: % = strUserName% / h3
/ BODY
/ HTML
När du skriver text normal ofta, allt är normalt. Om du anger Script kod: script alert (''Hej .''; / script kommer avascript varningsetikett pop up:
Nästa gång du besöker, detta varningsmärke visas samma, Detta beror på att Script-koden på din tid efter det första besöket hade varit att bo i en cookie. Detta är ett enkelt exempel på cross-site attacker.
Om du tror att detta är ett specialfall, kan du också titta på andra ställen på nätet, personligen försöka. Jag har några stora offentliga platser, utbildnings-platser och kommersiella webbplatser testade, vissa av dem gör mer än vad situationen där jag även hittade en sida som jag ofta använder kreditkort faktiskt på bidrag utan filtrering, tycker verkligen hemskt.
För det andra använder e-post till Cross Site Script Attack
Cross-site skript attack används i förteckningen för servern, servrar Usenet och e-postservrar är särskilt utsatta för komma. Följande är ett exempel för att förklara MyNiceSite.com webbplats. Eftersom du ofta surfa på hemsidan, gör om sitt innehåll inte ner det du älskar, så att du omedvetet lägger webbläsaren till ett dynamiskt webbinnehåll är alltid lita på den här inställningen.
MyNiceSite.com sida är alltid genom försäljning av abonnemang e-postadress till sina e-brev för att få intäkter, som faktiskt är en mycket god idé. Så jag köpte den i en e-postadress. Och gjorde en hel del mail till dig. I brevet, säger jag dig så snart som möjligt att besöka webbplatsen och kontrollera ditt konto med den senaste situationen. För att ge dig en bekväm, jag gjorde även en länk till denna skrivelse. Jag skulle koppla URL, användarnamn parameter i skriptet kod för att slicka till. Vissa kunder ovetande klicka på denna länk, det är på min då (bilden), och jag har också dragit nytta av:
Det är detta arbete, som när du klickar på denna länk efter länk i script kommer att användas för att styra din webbläsare för att hämta min avascript programmet och köra det. Min Script kontroller för att du använder IE webbläsare, för att fortsätta att ladda ner ActiceX kontroll particularlyNasty.dll. Eftersom innan du har innehållet på denna webbplats som alltid är säkert, så mina script och aktiva kontroller på din dator kan köra fritt.
3, ActiveX-attack beskrivning
När vi diskuterar ActiveX, CERT och Microsoft ingen hänvisning till cross-site skript metod för den risk som. W3C I "The Security Vanliga frågor säkerheten på ActiveX, gav en mer detaljerad beskrivning. Java-applet om kontroll av systemet är strikt begränsad. Sön utveckling när det föreskrivs att endast de som utgör något hot mot säkerheten i systemet tilläts att driva verksamheten.
Å andra sidan är ActiveX på driften av systemet inte strikt begränsat. Men om en har laddats ner kan du installera den körbara som gör vad de ville göra samma sak. IE webbläsare för denna funktion är också att vissa begränsningar, som de osäkra platsen, i standardinställningarna kommer inte att tillåta dig att ladda ner eller ge dig en varning snabb. Bygger på utveckling av ActiveX för företag som VeriSign Inc., har de gett numrerade ActiveX-kontroller. När du laddar ner efter den tid som kontroll, kommer IE webbläsare ger dig en varning och visar graden av sin trovärdighet skurk. Genom att användaren besluta om att anta denna kontroll. Som ett system säkerhet ökar.
Men för de användare som inte har mycket erfarenhet, de var ofta omedvetet, till de ursprungliga inställningarna ändrats för att möjliggöra dessa kontroller utan påminnelser på den nedladdade. Dessutom har en nybörjare, även i fråga om en uppmaning att ladda ner utan att tänka kommer att lämna något märke där kontrollerna. I vårt exempel, eftersom du litar på webbplatsen, ändra inställningarna för webbläsaren, så, ActiveX-kontroller utan påminnelser att ladda ner, och omedvetet på din dator börjar löpa .
4, 16 hex kodat ActiveX Script attack
Dåliga avsikter bör skilja mellan etiketten och skriften är mycket svårt. Script kan också i form av 16 hex gömma sig. Låt oss titta på följande E-mail detta exempel tack? Det är i form av 16 hexadecimala skickas ut:
Det är nästan ett komplett meddelande, som innehåller ett 16 hex förfalskade adressparametrar: avsändare = mynicesite.com. När användaren klickar på länken, användarens webbläsare startar det första fall som avses direkt till behandling av popup-varning fönster.
Del II: Cross Site Script Attack Brottsförebyggande
Först, hur man undviker att cross-site server attacker Script
Lyckligtvis är att förhindra cross-site attack Script teknik finslipa. Flera sätt detta kan vidtas för att förhindra cross-site attacker Script:
1. På dynamiskt skapade sidor är kodade tecken
2. Vill filtrera och begränsa tillförsel
3. Användning av HTML och URL-kodning
1. På dynamiskt skapade sidor är kodade tecken
Du först måste använda är dynamiskt skapade sidor om teckenkodning, du måste göra det, eller hackare kan ändra teckenuppsättning och enkelt via din försvarslinjen. Om vår webbplats är på engelska hemsida, så om vi sätter teckenkodning till latinska bokstäver enligt ISO-8859-1 på linjen, enligt följande:
meta Http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"
2. Filtrering och begränsa alla indata
Detta för att förhindra cross-site Script Den andra metoden för anfall under logga in Låt inte dessa specialtecken införs. Därför kan vi lägga avascript förfaranden onsubmit sätt att utföra denna funktion. I detta fall begränsar vi kan bara ange 15 tecken. Detta kommer att förhindra dessa långa skriften ingång.
I Knowledge Base-artikel QA252985 Den här boken ger en kort Microsoft avascript för att fullborda den indata filtrering. Vi introducerade också under de särskilda omständigheterna i detta koden för vårt exempel, såsom:
funktion checkForm () (
document.forms [0]. userName.value = _
RemoveBad (document.forms [0]. UserName.value);
return true;
)
/ / MICROSOFT'-koden
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g ,"");
återvända strTemp;
)
Med denna metod kan du filtrera dem som ingår i den ingående karaktär:
% [] (); & + - "''()
3. Användning av HTML och URL-kodning
Även om användningen av filter och begränsningar som nämns ovan, är den ingående metoden att använda ett mycket viktigt medel att försvara sig, men det var mitt sätt att sådana attacker per post eller maktlösa. Jag satte adressparametrar direkt på budskapet. Mot bakgrund av detta vi måste ta en mer robust säkerhetsåtgärder. Om vi använder ASP, relativt sett, för att lösa mycket enklare. Så länge den sammanlagda för dynamiskt skapade HTML-sidor och URL-kodning på linjen. Argumenten för vårt exempel anger första sidan av omdirigera URL vi gjort följande förändringar:
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Response.Cookies ("användarnamn"))
Vi gick med i genomförandet av sidan:
strUserName = Server.HTMLEncode (Request.QueryString ("användarnamn"))
Och
strUserName = Server.HTMLEncode (Request.Form ("användarnamn"))
Microsoft rekommenderar för alla in-och utmatning av dynamiska sidor ska kodas. Även uppgifterna i databasen och ta bort Detsamma bör gälla. Så att du till stor del kan undvika cross-site skript attack.
För att uppnå dessa bör läggas till i Page1.asp:
% @ Language = VBScript%
% If Request.Cookies ("användarnamn") "" Då
''Redirect om upptäcka cookie
Dim strRedirectUrl
strRedirectUrl = "page2.asp? användarnamn ="
strRedirectUrl = strRedirectUrl & _
server.URLEncode (Request.Cookies ("användarnamn"))
Response.Redirect (strRedirectUrl)
Else%
HTML
HEAD
META Http-equiv="Content-Type"content="text/html; charset=ISO-8859-1"
TITLE MyNiceSite.com Hemsida / TITLE
/ HEAD
SCRIPT LANGUAGE="avascript"
! -
funktion checkForm () (
document.forms [0]. userName.value =
RemoveBad (document.forms [0]. UserName.value);
return true;
)
fil //*********************************************** *******
fil / / Programmerare: EJ ursprungliga koden - kommer från MICROSOFT
fil / / Kod Källa: Microsoft Knowledge Base-artikel Q25z985
fil / / Beskrivning: Tar bort dåliga tecken.
fil //*********************************************** *******
funktion RemoveBad (strTemp) (
strTemp = strTemp.replace (/ / /"/''/%/;/(/)/&/+/-/ g, "");
återvända strTemp;
)
fil //--
/ SCRIPT
BODY
BR
H2 MyNiceSite.com / H2
BR
form Method="post"action="page2.asp" onsubmit="return checkForm();"
Ange ditt MyNiceSite.com användarnamn:
INPUT Type="text"name="userName" width="10" maxwidth="10"
INPUT Type="submit"name="submit" value="submit"
/ FORM
/ BODY
/ HTML
% End if%
Page2.asp Kanada som:
% @ Language = VBScript%
% Dim strUserName
Om Request.QueryString ("användarnamn ") "" sedan
strUserName = Server.HTMLEncode (Request.QueryString ("användarnamn"))
Else
Response.Cookies ("användarnamn") = Request.Form ("användarnamn")
strUserName = Server.HTMLEncode (Request.Form ("användarnamn"))
End If%
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 av denna attack var en effektiv kontroll. Att dessa märken och Script av skadlig kod, de är i skriftlig form har utvecklats enligt nedan:
Vi ökar också IIS komponent som används för att filtrera alla en dynamisk insats från specialtecken. För dem som har bra hemsidor, för att denna strategi förhindra cross-site skript attacker kommit lätt. Vi kan blockera detta mål kontroll begäran från ASP-sidor, kan bilda, cookie, till innehållet i begäran strängen och förfaranden upptäcka:
Vi kan också skriva loggfilen genom metoden för de statistiska uppgifter som att ansluta komponenterna. När en kund in en olaglig karaktär, kommer denna komponent att notera sin IP-adress och tid. Detaljerna är Doug dekanus Roll egen IIS Ansökan om ASPToday artikel.
Vi behöver bara ta några enkla Buju kan effektivt förhindra cross-site skript attack. Förutom de ovan nämnda tre metoderna, Microsoft och CERT rekommenderas också att använda en process de kallar "förnuft check"-metoden.例如,假设有个输入窗口只允许输入数字,我们就给它做个限定,只允许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攻击是黑客可采用的另一种方法。但我们只要进行以上所说的一些简单的处理就能防止这种形式攻击的发生。