NFsec Logo

Enumeracja użytkowników Gmail

09/05/2017 w Pen Test Brak komentarzy.  (artykuł nr 606, ilość słów: 330)

A

więc firma, na którą dostaliśmy zlecenie audytu posiada na swojej stronie listę kilku pracowników z imienia i nazwiska, a jej rekordy DNS typu MX sugerują, że używa Google Apps dla firmowej domeny. Jak potwierdzić fakt, że dany pracownik posiada adres w formacie: imie.nazwisko@startup.pl i jest istniejącym kontem w usłudze Gmail? Oczywiście możemy wysłać wiadomość e-mail z jakiegoś jednorazowego konta e-mail i oczekiwać na zwrotkę w przypadku pomyłki, ale równie dobrze możemy trafić na jakiś adres typu catch-all lub alias prowadzący do innego odbiorcy, a to już komplikuje nam nasze intencje.

Może łatwiej po prostu zapytać samą usługę Google, czy nasz potencjalny adres jest prawdziwy, czy nie? Dla istniejącego konta otrzymamy odpowiedź:

~# curl -v https://mail.google.com/mail/gxlu?email=johnny.five@startup.pl
 Trying 108.177.96.17...
* Connected to mail.google.com (108.177.96.17) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate: mail.google.com
* Server certificate: Google Internet Authority G2
* Server certificate: GeoTrust Global CA
> GET /mail/gxlu?email=johnny.five@startup.pl HTTP/1.1
> Host: mail.google.com
> User-Agent: curl/7.43.0
> Accept: */*
>
< HTTP/1.1 204 No Content
< Cache-Control: no-cache, no-store, max-age=0, must-revalidate
< Pragma: no-cache
< Expires: Mon, 01 Jan 1990 00:00:00 GMT
< Date: Tue, 09 May 2017 21:08:25 GMT
< Server: GSE
< Set-Cookie: COMPASS; expires=Fri, 19-May-2017 21:08:25 GMT; path=/mail; Secure; HttpOnly
< Alt-Svc: quic=":443"; ma=2592000; v="37,36,35"

od serwera która będzie chciała ustawić nam ciasteczko (Set-Cookie). Gdy spytamy o nieistniejące konto – serwer pominie proces ustawienia ciasteczka:

~# curl -v https://mail.google.com/mail/gxlu?email=johnny.5@startup.pl
*   Trying 108.177.96.17...
* Connected to mail.google.com (108.177.96.17) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate: mail.google.com
* Server certificate: Google Internet Authority G2
* Server certificate: GeoTrust Global CA
> GET /mail/gxlu?email=johnny.5@startup.pl HTTP/1.1
> Host: mail.google.com
> User-Agent: curl/7.43.0
> Accept: */*
>
< HTTP/1.1 204 No Content
< Cache-Control: no-cache, no-store, max-age=0, must-revalidate
< Pragma: no-cache
< Expires: Mon, 01 Jan 1990 00:00:00 GMT
< Date: Tue, 09 May 2017 21:08:46 GMT
< Server: GSE
< Alt-Svc: quic=":443"; ma=2592000; v="37,36,35"

W ten sposób możemy dość sprawnie i szybko sprawdzić listę wszystkich pracowników audytowanej firmy.

Więcej informacji: Abusing Gmail to get previously unlisted e-mail addresses

Kategorie K a t e g o r i e : Pen Test

Tagi T a g i : , , , , ,

Komentowanie tego wpisu jest zablokowane.