
Exploit no Modo de Desenvolvimento do Rails. Com algum conhecimento da aplicação alvo, é possível que um atacante adivinhe o token secreto do modo de desenvolvimento gerado automaticamente. Esse token secreto pode ser usado em combinação com outros componentes internos do Rails para escalar para um exploit de execução remota de código.
Uma vulnerabilidade de execução remota de código no modo de desenvolvimento do Rails <5.2.2.1, <6.0.0.beta3 pode permitir que um atacante adivinhe o token secreto gerado automaticamente no modo de desenvolvimento. Esse token secreto pode ser usado em combinação com outros componentes internos do Rails para escalar para um exploit de execução remota de código. Este código PoC para CVE-2019-5420 eleva os privilégios para conta de administrador sem a execução remota de código em si.
Copie o valor do cookie e substitua por "VALUE_OF_THE_COOKIE" na linha 11:
cookie = CGI.unescape "VALUE_OF_THE_COOKIE" # put in the value of your cookie here
Além disso, substitua "NAME::Application" pelo nome da sua aplicação. Por exemplo, se o nome da aplicação for "test", seria "test::Application":
secret = Digest::MD5.hexdigest("NAME::Application") # the name of the ruby on rails application, either bruteforce or have to be known directly
Execute o exploit e copie a saída do cookie. Substitua-o pelo cookie da aplicação web:
ruby CVE-2019-5420.rb