James Gosling av Sun Microsystems utviklet programmeringsspråket Java i 1995 . Det er en generell C + + derived språket som brukes i mange nettsteder i form av applets og servlets som utvider funksjonaliteten til webservere. En buffer overflow er et programmeringsspråk feil , utilsiktet eller annen måte , som begynner å skrive til tilstøtende minne celler , som er normalt forbudt av sikkerhetsmessige grunner. Java er vanligvis noe trygt fra buffer overflow fordi den har " grensekontroll ", som automatisk skaper unntak , noe som gjør at kode kan ikke tilfeldigvis tilgang uautorisert tilstøtende minne. Imidlertid kan administrativ tilgang til Java -serveren tvinge Java for å kjøre ekstern kode som kan tvinge buffer overflow . Instruksjoner
en
Tilgang Java Native Interface ( JNI ) på Java Virtual Machine kjører JavaScript. Dette er den eneste måten å skape et minne overløp i Java , ved å innføre eksternt , administrert kode , som i C + + .
2
Åpne eller opprette et nytt manus i databasen. Opprette en frittstående script er best å isolere buffer overflow script , slik at du enkelt kan oppheve effekten det fører
3
Lim dette skriptet : .
Røye buf [ 64 ] , i [ MAX_SIZE ]; printf ("Skriv inn buffer innhold: \\ n "); read ( 0 , i , MAX_SIZE - 1 ) ; printf ( " Bytes å kopiere : \\ n "); scanf ( "% d" ; , og bytes ); memcpy ( buf , i , bytes) ,
Deretter kjører den. I nettleseren, bør du bli spurt " Bytes for å kopiere " og skriv inn et vilkårlig stort antall . Denne koden eksempel avhengig av brukerens input til å føre til overløp .