James Gosling da Sun Microsystems desenvolveu a linguagem de programação Java , em 1995. É um propósito geral linguagem C + + derivada usada em muitos sites na forma de applets e servlets que estendem a funcionalidade de servidores web. Um buffer overflow é um erro de programação , intencional ou não, que começa a escrever para as células de memória adjacentes , o que normalmente não é permitida por razões de segurança . Java é tipicamente um pouco a salvo de buffer overflow porque tem " verificação de limites ", que automaticamente cria exceções , o que torna -se de código não pode acessar acidentalmente memória adjacente não autorizado. Contudo, o acesso administrativo ao servidor Java pode forçar Java para executar código externo que pode forçar estouro de buffer. Instruções
1
Acesso Java Native Interface ( JNI) no Java Virtual Machine rodando JavaScript. Esta é a única maneira de causar um estouro de memória em Java, através da introdução de código externo , não gerenciado , como em C + +.
2
Abra ou crie um novo script no banco de dados . Criando um script independente é melhor para isolar o roteiro de estouro de buffer , assim você pode facilmente desfazer o efeito que provoca
3
Cole este script: .
De char buf [64 ] , no [ MAX_SIZE ]; printf (" Digite o conteúdo do buffer : \\ n"); lido ( 0, em , MAX_SIZE -1) ; printf (" Bytes para copiar : \\ n"); scanf ( "% d" ; , & bytes ); memcpy ( buf , em , bytes );
em seguida, execute -o . No navegador, você deve estar se perguntado " Bytes de copiar " e insira um número arbitrariamente grande . Este exemplo de código depende de entrada do usuário para causar o estouro.