
Exploit para CVE-2019-17638 visando o servidor HTTP Jetty Java, permitindo execução remota de código através de requisições HTTP manipuladas para testes de segurança e verificação de vulnerabilidades.
O projeto Jetty é um servidor HTTP 100% Java, cliente HTTP e contêiner de Servlet da Eclipse Foundation
Jetty é open source e possui licenciamento duplo usando a Apache 2.0 e a Eclipse Public License 1.0. Você pode escolher qualquer uma das licenças ao distribuir o Jetty.
O diretório de execução é o diretório raiz de uma distribuição binária ou o diretório jetty-distribution/target/distribution quando construído a partir do código fonte.
Para executar com as opções padrão:
$ cd demo-base $ java -jar ../start.jar
Para ver as opções disponíveis e os argumentos padrão fornecidos pelo arquivo start.ini:
$ java -jar /path/to/start.jar --help
Muitos recursos do Jetty podem ser habilitados usando o comando --module. Por exemplo:
$ cd mybase $ java -jar /path/to/start.jar --module=https,deploy
Isso habilitará os módulos https e deploy (e suas dependências transitivas) temporariamente para esta execução específica do Jetty.
Para ver quais módulos estão disponíveis
$ java -jar /path/to/start.jar --list-modules
A propriedade jetty.base é uma propriedade que pode ser definida na linha de comando (o padrão é o que a propriedade java 'user.dir' do seu sistema aponta). O mecanismo start.jar do Jetty configurará sua instância do Jetty a partir da configuração presente neste diretório jetty.base.
Exemplo de configuração:
$ mkdir mybase $ cd mybase
$ java -jar /path/to/jetty-dist/start.jar --add-to-start=http,deploy
$ java -jar /path/to/jetty-dist/start.jar