domingo, 19 de julho de 2015

[Treinamento] - Venda gravação curso OSSEC HIDS (em português)

Caros,

Estou vendendo a gravação do treinamento de OSSEC realizado no primeiro semestre desse ano. O Curso é baseado na versão 2.8.1,  seguindo o manual de referência bem como na sua maioria com muita prática. Além de tudo, o curso é bem informal e vamos criando testes de acordo com pedido dos alunos. Grade do Curso (dividido em 13 aulas):






1. Entendo funcionamento OSSEC HIDS x NIDS
   1.1. Funcionalidades OSSEC
   1.2. Modos instalação
   1.3. Sistemas suportados
 

2. Instalando o OSSEC
   2.1. Requisitos
   2.2. Modos instalação Local / Agente / Servidor
   2.3. Replicando instalação
 

3. Configurações OSSEC
   3.1. Cliente e Servidor
   3.2. Alertas
   3.3. Regras
 

4. Decoders/Regras
   4.1. Entendendo os Decoders
   4.2. Entendendo as Regras
   4.3. Linkando decoders e regras
 

5. Sistema de Integridade e detecção de rootkits
   5.1. O que é um rootkit?
   5.2. Como funciona a detecção de rootkit do ossec
   5.3. Monitorando a integridade de seu sistema (HIMS)


6. Active Response
   6.1. Active Response disponíveis
   6.2. Configuração de Active Response
   6.3. Ferramentas Active Response
 

7.Usando interface web
   7.1. Instalando a interface web
   7.2. Analisando e pesquisando eventos
 
8. Integração básica Elastic Search / Kibana

Investimento: R$ 499,00

Interessado entrar em contato via comentário ou e-mail spooker@gmail.com

Happy Detection!

Rodrigo "Sp0oKeR" Montoro

quarta-feira, 1 de julho de 2015

TOP30 Emerging Threats (ET) Snort alerts e IP nos honeypots

Instalei em 3 sensores da honeynet o meu querido snort. Logicamente o Snort só detecta o que já conhece, visto que são regras de blacklist, mas acho interessante ter ele rodando em paralelo com os daemons.



Abaixo a lista das TOP30 regras que alertaram:

  8241 [**] [1:2017162:2] ET SCAN SipCLI VOIP Scan [**]
   5469 [**] [1:2402000:3709] ET DROP Dshield Block Listed Source group 1 [**]
   4309 [**] [1:2001219:19] ET SCAN Potential SSH Scan [**]
   2308 [**] [1:2011716:4] ET SCAN Sipvicious User-Agent Detected (friendly-scanner) [**]
   2179 [**] [1:2010935:2] ET POLICY Suspicious inbound to MSSQL port 1433 [**]
   2129 [**] [1:2010937:2] ET POLICY Suspicious inbound to mySQL port 3306 [**]
   1862 [**] [1:2008578:6] ET SCAN Sipvicious Scan [**]
   1162 [**] [1:2402001:3709] ET DROP Dshield Block Listed Source group 1 [**]
   1031 [**] [1:2500108:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 55 [**]
    624 [**] [1:2500132:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 67 [**]
    568 [**] [1:2400000:2488] ET DROP Spamhaus DROP Listed Traffic Inbound group 1 [**]
    280 [**] [1:2101411:12] GPL SNMP public access udp [**]
    249 [**] [1:2500028:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 15 [**]
    232 [**] [1:2500106:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 54 [**]
    220 [**] [1:2500066:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 34 [**]
    203 [**] [1:2403350:1829] ET CINS Active Threat Intelligence Poor Reputation IP TCP group 26 [**]
    125 [**] [1:2403346:1829] ET CINS Active Threat Intelligence Poor Reputation IP TCP group 24 [**]
    118 [**] [1:2500138:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 70 [**]
    105 [**] [1:2009699:1] ET VOIP REGISTER Message Flood UDP [**]
     92 [**] [1:2500022:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 12 [**]
     90 [**] [1:2101616:9] GPL DNS named version attempt [**]
     84 [**] [1:2500136:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 69 [**]
     84 [**] [1:2010936:2] ET POLICY Suspicious inbound to Oracle SQL port 1521 [**]
     73 [**] [1:2500100:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 51 [**]
     68 [**] [1:2500062:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 32 [**]
     52 [**] [1:2500102:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 52 [**]
     47 [**] [1:2403331:1829] ET CINS Active Threat Intelligence Poor Reputation IP UDP group 16 [**]
     45 [**] [1:2403333:1829] ET CINS Active Threat Intelligence Poor Reputation IP UDP group 17 [**]
     44 [**] [1:2500140:3603] ET COMPROMISED Known Compromised or Hostile Host Traffic TCP group 71 [**]
     43 [**] [1:2403324:1829] ET CINS Active Threat Intelligence Poor Reputation IP TCP group 13 [**]

TOP30 IP de origem que geraram essas regras:

   1343 43.255.189.38
   1063 61.240.144.66
    796 155.94.64.250
    767 23.92.80.90
    755 218.77.79.43
    648 23.92.80.27
    528 61.240.144.65
    438 61.240.144.64
    414 61.240.144.67
    369 61.160.224.130
    351 46.165.249.2
    351 185.94.111.1
    327 222.186.27.171
    326 61.160.224.128
    313 192.187.115.202
    289 188.138.1.239
    242 124.158.12.201
    235 23.92.80.95
    234 173.193.12.244
    233 188.227.186.16
    231 69.64.33.115
    227 46.165.210.84
    225 71.6.135.131
    220 62.210.71.22
    218 192.3.8.210
    215 94.102.49.168
    210 61.160.224.129
    207 23.92.80.97
    195 162.244.35.24
    189 222.186.21.133

Pretendo colocar sensores internos em redes reais, o que acredito que adicionará outros alertas, porém é válido ativar essas regras caso não as possua.

Ainda estou em fase de testes e pretendo num futuro compartilhar essas informações de forma automatica (API) ou site.

Happy Snorting!

Rodrigo "Sp0oKeR" Montoro

quinta-feira, 25 de junho de 2015

[Dica Ferramenta] - Geolocation (País e ASN - Autonomous System Numbers) com geoip-bin

Ontem precisava rapidamente fazer Geolocation de alguns milhares de IP que coletei nos honeypots, pensei em codar algo, porém numa googleada rápida achei essa tool que já vem no repositório do Ubuntu e funciona bem legal.


Basicamente a instalação é simples

$ sudo apt-get install geoip-bin

Com a ferramenta instalada, sugiro que atualizem a database de ASN e Países para ter melhores resultados

Atualizar países

$ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
$ gunzip GeoIP.dat.gz
$ sudo cp GeoIP.dat /usr/share/GeoIP/

Atualizar ASN

$ wget http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz
$ gunzip GeoIPASNum.dat.gz
$ sudo cp GeoIPASNum.dat /usr/share/GeoIP/

Feito isso, só usar a ferramenta:

$ geoiplookup 43.229.52.28
GeoIP Country Edition: HK, Hong Kong
GeoIP ASNum Edition: AS63857 HOT NET LIMITED

No caso dos testes dos honeypots, alguns dados extraídos, em breve pretendo compartilhar mais.

TO10 Países

 466847  GeoIP Country Edition: HK, Hong Kong
 133844  GeoIP Country Edition: CN, China
  14341   GeoIP Country Edition: FR, France
  10093   GeoIP Country Edition: US, United States
   5781    GeoIP Country Edition: GB, United Kingdom
   4618    GeoIP Country Edition: KR, Korea, Republic of
   3585    GeoIP Country Edition: RU, Russian Federation
   3569    GeoIP Country Edition: DE, Germany
   2899    GeoIP Country Edition: IN, India
   2321    GeoIP Country Edition: TW, Taiwan


TOP10 ASN

 465302 GeoIP ASNum Edition: AS63857 HOT NET LIMITED
  96216  GeoIP ASNum Edition: AS23650 AS Number for CHINANET jiangsu province backbone
  12120  GeoIP ASNum Edition: AS4134 Chinanet
   8376   GeoIP ASNum Edition: AS21502 NC Numericable S.A.
   6191   GeoIP ASNum Edition: AS4837 CNCGROUP China169 Backbone
   5510   GeoIP ASNum Edition: AS202109 Digital Ocean, Inc.
   4292   GeoIP ASNum Edition: AS24445 Henan Mobile Communications Co.,Ltd
   4135   GeoIP ASNum Edition: AS12876 ONLINE S.A.S.
   2711   GeoIP ASNum Edition: AS9808 Guangdong Mobile Communication Co.Ltd.
   2431   GeoIP ASNum Edition: AS9318 Hanaro Telecom Inc.

Happy Detection!

Rodrigo "Sp0oKeR" Montoro

segunda-feira, 22 de junho de 2015

Logar tentativas de acesso a diretórios protegido pelo .htaccess

Domingão a noite, estava conversando sobre coisas nerds com o Robertux e ele me perguntou se conhecia algum honeypot para logar tentativas de acesso a diretório protegidos com o .htaccess. Logicamente por motivos de segurança as senhas não são salva por padrão nos logs texto que o apache gera.

De cabeça e pesquisando rapidamente não conhecia nada, mas algo que gosto de usar bastante para simular honeypots web é o próprio apache, bem mal configurado as vezes, visto que o foco é coletar infos e não ser seguro.



Pequisando e fazendo alguns testes, consegui montar algo usando basicamente essas 2 configurações:

1-) Criar o .htaccess dentro do diretório protegido com o seguinte conteúdo:

ErrorDocument 401 /logging.php

AuthName "My Password Protected Site"
AuthUserFile /tmp/.htpasswd
AuthType Basic
Require valid-user

# Set REMOTE_USER env variable on 401 ErrorDocument
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} ^401$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},E=REMOTE_USER:%{ENV:REDIRECT_REMOTE_USER}]

No caso, o arquivo que será redirecionado em caso de erro do login estará no root e com nome logging.php.

2-) Criar o logging.php com o seguinte código

if(isset($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])):
    $fp = fopen('/tmp/htaccess.log', 'a+');
    $ip = $_SERVER['REMOTE_ADDR'];
    $password = $_SERVER['PHP_AUTH_PW'];
    $username = $_SERVER['PHP_AUTH_USER'];
    $time = date('y-m-d/H:i:s');
    $request = $_SERVER['REDIRECT_URL'];
    fwrite($fp, $time."\t".$ip."\t".$request."\t".$username."/".$password."\r\n");
    fclose($fp);
endif;

ob_start();
header("HTTP/1.1 401 Authorization Required",1);
header("Status: 401 Authorization Required",1);
echo '
401 Authorization Required

Authorization Required


This server could not verify that you are authorized to
 access the document
 requested.  Either you supplied the wrong
 credentials (e.g., bad password), or your
 browser doesn\'t understand how to supply
 the credentials required.
';
exit();
?>

No exemplo ele salvará as tentativas no /tmp/htaccess.log .


3-) Lembre-se de mudar o AllowOverride das configurações do diretório root de None para All, visto que ele vem como None por motivos de segurança

        Options Indexes FollowSymLinks
        AllowOverride all
        Require all granted
O resultado no /tmp/htaccess.log (fiz um update no script acima que salva o IP source também) será:

15-06-22/14:32:20    127.0.0.1    /honey/    admin/123
15-06-22/14:32:20    127.0.0.1    /honey/    admin/lalala
15-06-22/14:32:20    127.0.0.1    /honey/    admin/1234546
15-06-22/14:32:20    127.0.0.1    /honey/    admin/abc
15-06-22/14:32:20    127.0.0.1    /honey/    admin/test
15-06-22/14:32:20    127.0.0.1    /honey/    admin/root
15-06-22/14:32:20    127.0.0.1    /honey/    admin/teste
15-06-22/14:32:20    127.0.0.1    /honey/    admin/admin


Usei de referência essa link - http://serverfault.com/questions/460765/log-invalid-login-attempts-htpasswd

Lembrando que isso é pra função de honeypot, código pode (ou não) conter falhas, simplesmente fiz algo funcional.

Alguém conhece algo melhor ? Sugestões ? Subirei depois isso em algum node pra ver se consigo infos legais e logicamente compartilhar.

Happy Detection!

Sp0oKeR Labs

sexta-feira, 19 de junho de 2015

Estamos de volta! Segundo semestre de muita informação para compartilhar =)

Amigo(as),

Depois de 2 anos com tentativas de mudanças de área, acertos e erros, muito aprendizado, um período sabático de 2 meses para refletir um pouco o que quero pra mim e muito pouco blogpost nesse período, estamos de volta!



Ando meio afastado do blog, bem como não colocando conteúdos de testes. Como estou voltando a área de origem (pesquisas e muita detecção de intrusos) no qual testarei e pesquisarei muito muito mais. Pretendo compartilhar quase que diariamente meus testes, vídeos, pesquisas/idéias, leituras e falhas =).

Entre os assuntos que estou com uma pilha de idéias e testes já iniciados são (só um resumo de tudo que vou blogar quase que diariamente e em "pedacinhos"):

- MHN / Honeypot no geral

   A idéia é compartilhar dados dos meus sensores de testes, dar dicas, linhas de comandos para extração, configurações. Entre uma lista de nomes podemos citar:
  • Kippo
  • Honeyd
  • Dionaea
  • Wordpot
  • Shockpot
  • ElasticHoney
  • Outros diversos projetos existentes.

A URL do MHN http://threatstream.github.io/mhn/ caso queira conhecer essa tool.

- Threat Intel

   O mundo de inteligência em ameaças é algo totalmente dinâmico, porém lendo e acompanhando textos, existe muita informação na verdade e pouco inteligência muitas vezes. A idéia é compartilhar testes, resultados, papers e ajudar ao uso de feeds públicos (e quem sabe pagos se alguém fornecer as infos).  Um projeto bem interessante que fará parte dessa parte de pesquisa será o MLSec Project, liderado pelo Alex Pinto.


- OpenSoc

Esse projeto me chamou muito atenção no que li e assisti vídeos, porém a minha meta agora é fazer algo prático e ver se é viável para pequenas estruturas, nada gigante. Será uma escola esses testes e vou compartilhando problemas, acertos e pedindo ajuda.

Site do projeto: http://opensoc.github.io/ 

- Host Security / Hardening / Configuration Security

Registro windows (sim, vou investir um tempo tentando entender esse mundo maluco), melhores práticas (e realidades hehehe) de configurações, guias disponíveis e uso de ferramentas como OpenScap.

Além disso diversos outros assunto, logicamente sempre vinculados com Detecção de Intrusos no geral

- Malwares Nacionais

Muitas novidades por vir em Julho.

- Sistemas Detecção de Intrusos (Snort, Suricata, OSSEC, ModSecurity, IoC, Análise de logs)

- Network Security Monitoring (NSM - Security Onion)

Além dos assunto nerds, também postarei por 2 coisas do meu interesse, logicamente em menor escala que os outros assuntos (ou não né, quem me conhece sabe que esporte atualmente é meu rivotril + ritalina + cachaça:

- Esportes (Triathlon, XTerra, Aventuras)

- Startup / Produtos (algo que não domino mas acho extremamente interessante)

Retorno ao Triathlon e pesquisas nesse segundo semestre 2015 promete!

Set nerds mode level extreme! Segue ai pessoal que semana que vem já começo =)!

Vamos que vamos!

Happy Detection.

quarta-feira, 17 de junho de 2015

Gravação do Webcast sobre Treinamento Snort

Caros,

Fiz um webcast explicando sobre o treinamento Snort que ministrarei em parceria com o Treinamento Linux em Julho (início 13 de Julho com aulas de segunda a quinta noturna).

Segue abaixo o vídeo:




Caso tenham interesse, entrem em contato http://www.treinamentolinux.com.br/contato-2/ 

Precisando de mais dúvidas ou informações técnicas podem entrar em contato pelos comentários ou meu e-mail também spooker /at/ gmail.com

Happy Snorting!

Rodrigo Montoro

segunda-feira, 16 de fevereiro de 2015

Documentário / Filme - Defcon e The Algorithm

Sugestão caso não tenha assistido e queira curtir algo, estão ambos no Youtube, especialmente o documentário da Defcon que é "antigo" porém sensacional.


ALGORITHM: The Hacker Movie
A freelance computer hacker breaks into secret government contractor and downloads a program. He must choose between his own curiosity and the lives of his friends.

Esse vídeo tem legendas em pt_BR que o Crash fez =)



DEFCON 20 Documentary Full Version.




Happy CarnaHacking =)

Abs!