7 thoughts on “Contact

  1. Terve Janne!

    Poimin Hesarin artikkelista seuraavan quoten:
    “Virallisen arvion mukaan maailman verkkosivuista 50–55 prosentilla on Cross-site Scripting- eli XSS-haavoittuvuuksia. Oma arvioni on, että haavoittuvuuksia on peräti 60 prosentilla”

    Pistätkö jotain linkkiä tuohon “viralliseen” arvioon ja osaatko yhtään avata lisätietoja tuosta 60%.

    Itse toimin enemmän koodauspuolella uuden luomisessa, mutta aktiivisesti tutkin löydettyjä exploiteja ja niiden proof-of-concepteja lähinnä juuri sen takia, että omassa projektissa opittaisi myös muiden virheistä. Omasta “hihasta” heittäisin sellaisen luvun, että n. 10-20% web-saiteista sisältää XSS:n. Minun luvussa on haittapuolena se, että se on lähinnä arvaus. Kun en saitteja aktiivisesti kolua, niin ei ole mitään vertailupohjaa. Kuitenkin väittämä siitä, että yli puolessa maailman saiteista on escapeamaton eval() JavaScriptissä kuulostaa uskomattomalta.

    JaTu

  2. Terve,

    Tässä linkki yhteen hyvään lähteeseen: XSSn yleisyydestä. Vuonna 2007 arvio oli n. 80%. Arvio vaihtelee hieman lähteestä riippuen.

    Oma arvioni perustuu puhtaasti testaukseen: lähetetyt XSS haavoittuvuusraportit vs. testatut sivustot. Tosin määrä ei välttämättä ole tarpeeksi suuri tilastollisesti.

    JavaScript tason/DOM-haavoittuvuuksia on yllättävän vähän verrattuna serveri-puolen skripteihin. Syötteen putsaus täytyy yleensä tehdä serverin skripteissä.

    • Kiitokset linkistä. En tullut tuota ajatelleeksikaan, että JavaScript-koodia voi tosiaan pyörittää jonkun input-mekanismin (esim. GET-parametrit) kautta.

      Onko olemassa joku softa, millä omaa saittia voisi härnätä? Sitä aina koodatessa haluaisi ajatella, että omat inputit on sanitoitu, mutta… Jos kuorman testaukseenkin on olemassa softaa, niin eikö tunnistettuihin parametreihin olisi jotain vastaavaa testityökalua?

      • XSS testausohjelmistoja on niukalti. Parhaat lienevät selaimeen tehtyjä lisäosia. Juuri JavaScriptin takia kunnollinen testaus vaatii selaimen. Suosittelen testaustyökaluksi Firefoxia ilman lisäosia, koska siinä ei ole XSS estoja.

        Hyviä testikeisejä löytyy mm. OWASPin sivustolta

        • Löysin erilaisia viritelmiä, mutta nämä 3 projektia vaikuttavat riittävän laadukkailta kokeiltavaksi:
          – OWASPin oma proxy: https://code.google.com/p/zaproxy/
          – XSS Me Firefoxille: https://addons.mozilla.org/en-US/firefox/addon/xss-me/
          – XSS Rays Chromelle: https://chrome.google.com/webstore/detail/xss-rays/kkopfbcgaebdaklghbnfmjeeonmabidj?hl=en-GB

          Tuo postaamasi OWASPin linkkilista on todella vaikuttava, ei noita kaikkia keksi kyllä mitenkään itse. Eli seuraavaksi etsintälistalle joku valmis HTML:n sanitointikirjasto. Ideoita sellaisesta?

          • Omassa framessa on Smarty-pohjaiset viewit. Sillä käyttäjän syötettä esittäessä voi aina sanoa {$muuttuja|escape:htmlall} ja kaikki HTML-tagit tai entityt esitetään literaalina siten, kun käyttäjä ne kirjoitti.

            Ongelmaksi muodostuukin juuri tämäntyyppiset (kommentti-) kentät, joihin voi kirjottaa enemmän tarinaa + muotoilua. Siellä on käytännössä pakko sanitoida käyttäjän syöte tuon aiemmin lähettämäsi OWASPin 80 kohdan listan mukaan. Voisi helposti kuvitella, että jollain muullakin on sama ongelma, ja joku olisi jo tuosta listasta tehnyt jollekin kielelle kivan kirjastoimplementaation, jota voisi sitten käyttää itsekin. Eipä näy moista löytyvän.

Leave a Reply

Your email address will not be published. Required fields are marked *