Métodos de ataques

Empezamos hablando de la diferencia entre On-prem y Cloud.

  • Aplican los mismos ataques pero en diferentes ángulos
  • Hay más espacios para misconfigurations
  • Todos los resources tienen policies para hacer acciones. Osea hackear web te puede dar más acceso sin tener un usuario per se. 
  • No hay tanto Active directory pero es accessible desde internet.
  • Es más fácil hacer password spraying porque todo es público

Diferencias/similitudes. Haciendo énfasis que si puedes hackear una puedes hackear otra.

95% del red-teaming incluye Microsoft 365 (azure)

Cloud Authentication Methods

  • Hay muchas más formas que username/password
  • Api, certificates, keys, etc
  • MFA pueden ser diferentes entre sistemas. Por ejemplo pueden haber legacy protocols a los que no puedes ponerle MFA.

Authentication en Azure

  • Password hash synchronisation
  • Pass through authentication
  • Active directory federation services (ADFS)

Password Hash. te deja entrar a azure usando AD on-premise.

Pass thought authentication. Cuando un usuario se authentica se va a un servicor local donde se valida.

Active directory federation services (ADFS) Me redirigen como usuario a on-premise, recibe un token y lo usan en Azure

Pentest

First step Recon

  • Hay que determinar, AD connectivity, mail gateways, web apps, file storage, etc
  • Los métodos tradicionales de host directory aplican
  • MX records pueden mostrar cloud usage.
  • Tools
    • Recon-NG
    • OWASP Amass
    • Spiderfoot
    • Gobuster
      • SecLists Discovery/DNS
    • Sublist3r
    • Google
      • site:microsoft.com -site:www.microsoft.com
    • Bing
    • Certificate transparency https://crt.sh/ (los certificados tienen subdomains)
    • Shodan
      • org:”Target Name”
      • net:”CIDR range”
      • port:”443″
    • Censys,io
    • ThreatCrowd
    • DNSDumper
    • ARIN Searches
    • Burpsuite (cuando apuntan a una S3 bucket para static content)
    • Emails
      • PowerMeta
      • FOCA
    • For azure https://login.microsoft.com/common/oauth2/token (timing attack)
    • github -> MSOLSpray

First Misconfigured Services (https://mexicanpentester.com/2020/08/14/osint-en-cloud/)

  • Public S3
  • Si puedes escribir en los buckets es peor tantito porque los puedes envenenar y hacer ataques como xss o poner criptominers en .js libraries.
  • Si burp encuentra 404 en *.s3,amazonaws.com es muy interesante porque los puedes tomar y envenenar igual. Porque AWS te deja registrarlo otra vez si se borra.
  • EBS (disks) https://github.com/BishopFox/dufflebag (Dufflebag is a tool that searches through public Elastic Block Storage (EBS) snapshots for secrets that may have been accidentally left in. You may be surprised by all the passwords and secrets just laying around!)
  • Azure storage es com S3 y tambien puede ser público.
    • Azure hace muchos subdomains por ti, y se puede enumerar mucho con eso.
  • Si no tienes keys puedes usar https://www.shhgit.com/ ha

Password attacks

  • Password spraying
  • Credential stuffing (usar las que ya fueron dumpeadas e iteraciones)
  • Azure tiene “password protection” que les evita poner malos passwords
  • Igual tiene “Smart lockout” que es inteligente en bloquear brute force y spray attempts. Para eso esta: https://github.com/ustayready/fireprox
  • Evilginx2 es para bypass MFA
  • Phishing con calendar injection

Web Servers

  • Known vulnerabilities
  • SQL y command injections
  • SSRF
  • Hay que buscar
    • Credentials
    • Certificates
    • Environment variables
    • Storage accounts

Post-Compromise Recon

  • AWS
    • A que me dan acceso las Keys
    • https://github.com/carnal0wnage/weirdAAL