16 Eyl, 2021

[:tr]Bozuk Tanımlama ve Kimlik Doğrulama[:en]Bad Identification and Authentication[:]

[:tr]Bozuk kimlik doğrulama, oturum yönetimi ve kimlik bilgisi yönetimi alanlarındaki zafiyetleri ifade eder. Her ikisi de bozuk kimlik doğrulama olarak sınıflandırılır, çünkü saldırganlar bir kullanıcı gibi görünmek için her iki yolu da kullanabilir.

Bu tür zafiyetler saldırganın bir web uygulaması tarafından kullanılan kimlik doğrulama yöntemlerini, yakalamasına veya atlamasına olanak sağlayabilir.

Oturum yönetimi

Bir web oturumu, belirli bir süre içinde aynı kullanıcıyla ilişkili bir dizi ağ işlemidir. Modern web uygulamaları, birden çok istek süresi boyunca her kullanıcı hakkında bilgi veya durumun saklanmasını gerektirir. Bu nedenle oturumlar, bir kullanıcının oturum süresi boyunca web uygulamasıyla yaptığı her etkileşim için geçerli olacak değişkenler (erişim hakları gibi) oluşturma yeteneği sağlar.

Web uygulamaları, her kullanıcıya her ziyaret için benzersiz bir oturum kimliği verir, web uygulamasının sitede gezinirken kullanıcıyla iletişim kurmasını sağlar. Bu oturum kimlikleri genellikle çerez bilgileri ve URL parametreleri içerisinde yer alır.

Bozuk Kimlik Doğrulama Saldırıları

Oturum çalma (Session Hijacking)

Saldırganlar kullanıcıların kimliklerini taklit etmek için, çalınan oturum kimliklerini kullanır. Oturum çalma tekniğinin en basit örneği, bir kullanıcının web uygulamasındaki oturum çerezini elde etmesiyle yetkisiz erişim elde edebilir.

Oturum Kimliği URL’sini Yeniden Yazma

Bu senaryoda, bir kişinin oturum kimliği bir web sitesinin URL’sinde görünür. Bunu herkes görebilir (örneğin, güvenli olmayan bir Wi-Fi bağlantısı sniffing yöntemleri aracılığıyla) oturumu çalınabilir.

Oturum Fiksasyonu (Session Fixation)

Oturum Sabitleme, bir saldırganın geçerli bir kullanıcı oturumunu ele geçirmesine izin veren bir saldırıdır. Oturum sabitleme saldırısının ana fikri, saldırgan web sunucusunda oturum açar. Sunucu saldırgana bir oturum IDsi tanımlar. Bu ID ile saldırganın kurbana bir link göndermesi gerek kurbanın gelen bu bağlantıyı tıklaması ve sunucusuyla iletişim kurması gerekir. Sunucu oturum işleminin önceden kurulduğunu anlar. Dolayısıyla yeni bir oturum kimliği oluşturma gereksinimi duymaz. Böylece saldırgan kurban kullanıcının oturumunu elde etmiş olacaktır.

Kimlik Bilgileri Doldurma (Credential Stuffing)

Saldırganlar şifrelenmemiş e-postalar ve parolalarla dolu bir veri tabanına eriştiğinde, genellikle diğer saldırganların kullanması için listeyi satar. Bu saldırganlar daha sonra, bir siteden çalınan kimlik bilgilerini farklı hesaplarda test eden kaba kuvvet saldırıları için botnet’leri kullanır. Bu taktik genellikle işe yarar çünkü insanlar uygulamalar arasında sıklıkla aynı parolayı kullanır. Şu anda saldırganların kullanabileceği milyarlarca güvenliği ihlal edilmiş kimlik bilgisi bulunmaktadır.

Şifre Püskürtme (Password Spraying)

Araştırmalara göre 23,2 milyon kullanıcının hesap şifreleri “123456” kullanılmakta olduğu tespit edilmiştir.

Parola püskürtme saldırıları da buradan yola çıkarak, sıklıkla kullanılan zayıf parolalar ile çok sayıda hesaba şifre tahmini yoluyla yetkisiz erişimler sağlama saldırılarıdır.

Kimlik Oltalama Saldırıları

Saldırganlar genellikle kullanıcılara güvenilir bir kaynaktan geliyormuş gibi görünen bir e-posta göndererek ve ardından kullanıcıları kimlik bilgilerini veya diğer ilgili bilgileri paylaşmaları için kandırarak kimlik bilgileri çalar.

Başarılı veri ihlallerinin %35’i 2019’da oltalama saldırısıyla başladı. Saldırganların hedefi kimlik avı yoluyla kurbanlarını cezbetmek için farklı mekanizmaları kullanmaktadır.

Bozuk Kimlik Doğrulama nasıl önlenir?

  • Çok faktörlü kimlik doğrulama uygulayın, otomatikleştirilmiş, kimlik bilgisi doldurma, kaba kuvvet ve çalıntı kimlik bilgilerinin yeniden kullanım saldırılarını önlemek için.
  • Özellikle yönetici kullanıcılar için herhangi bir varsayılan kimlik bilgisi ile uygulamayın.
  • En kötü 10.000 şifre listesine göre yeni veya değiştirilmiş şifreleri test edin ve zayıf şifre kontrolleri uygulayın.
  • Parola uzunluğu ve karmaşıklığı gibi ilkeler parola ilkeleri uygulayın.
  • Yeni oturum açtıktan sonra yüksek entropi ile yeni bir rastgele oturum kimliği oluşturan sunucu tarafında, güvenli, yerleşik bir oturum yöneticisi kullanın. Oturum kimlikleri URL’de olmamalı, güvenli bir şekilde saklanmalı ve oturum kapatma, boşta kalma ve mutlak zaman aşımlarından sonra geçersiz kılınmalıdır.
  • Başarısız oturum açma girişimlerini sınırlayın veya giderek geciktirin. Tüm hataları Loglara kaydedin ve kimlik bilgisi doldurma(stuffing), kaba kuvvet veya diğer saldırılar algılandığında yöneticileri uyarın.

Kaynakça:
owasp.org
cheatsheetseries.owasp.org
scanrepeat.com
contrastsecurity.com
owasp.org
auth0.com
hdivsecurity.com/

KVKK, ISO 27001, Bilgi ve İletişim Güvenliği Rehberi, ISO 27701, Bilgi Güvenliği, Siber Güvenlik ve Bilgi Teknolojileri konularında destek ve teklif almak için lütfen

[:en]Broken authentication refers to vulnerabilities in session management and credential management. Both are classified as broken authentication because attackers can use both ways to pretend to be a user.

Such vulnerabilities could allow an attacker to capture or bypass authentication methods used by a web application.

Session management

A web session is a series of network operations associated with the same user over a period of time. Modern web applications require storing information or state about each user over multiple request durations. Sessions therefore provide the ability to create variables (such as access rights) that will apply to every interaction a user has with the web application for the duration of the session.

Web applications give each user a unique session ID for each visit, allowing the web application to communicate with the user while navigating the site. These session IDs are usually included in the cookie information and URL parameters.

Broken Authentication Attacks

Session hijacking

Attackers use stolen session IDs to impersonate users. The simplest example of session stealing technique is that a user can gain unauthorized access by obtaining the session cookie in the web application.

Rewrite Session ID URL

In this scenario, a person’s session ID appears in the URL of a website. Anyone can see this (for example, via sniffing methods of an unsecured Wi-Fi connection) session can be stolen.

Session Fixation

Session Pinning is an attack that allows an attacker to hijack a valid user session. The main idea of ​​a session fixation attack is that the attacker logs on to the web server. The server identifies a session ID to the attacker. With this ID, the attacker needs to send a link to the victim, and the victim needs to click this link and communicate with the server. The server understands that the session process has already been established. Therefore, it does not need to create a new session ID. Thus, the attacker will have obtained the session of the victim user.

Credential Stuffing

When attackers access a database full of unencrypted emails and passwords, they often sell the list for other attackers to use. These attackers then use botnets for brute force attacks that test credentials stolen from a site on different accounts. This tactic usually works because people often use the same password between apps. There are currently billions of compromised credentials available to attackers.

Password Spraying

According to the researches, it has been determined that 23.2 million users’ account passwords are “123456”.

Starting from this, password spraying attacks are attacks that provide unauthorized access to a large number of accounts by password guessing with frequently used weak passwords.

Phishing Attacks

Attackers often steal credentials by sending users an email that appears to be from a trusted source and then tricking users into sharing their credentials or other relevant information.

35% of successful data breaches started with a phishing attack in 2019. The attackers target use different mechanisms to lure their victims through phishing.

How to avoid Broken Authentication?

• Implement multi-factor authentication to prevent automated, credential stuffing, brute-force, and stolen credential reuse attacks.

• Do not apply with any default credentials, especially for admin users.

• Test new or changed passwords against a list of 10,000 worst passwords and apply weak password checks.

• Enforce password policies, such as password length and complexity.

• Use a secure, built-in session manager on the server side that generates a new random session ID with high entropy upon new login. Session IDs should not be in the URL, they should be stored securely and should be invalidated after logout, idle and absolute timeouts.

• Limit or progressively delay failed login attempts. Log all errors and alert administrators when credential stuffing, brute force or other attacks are detected.

References:
owasp.org
cheatsheetseries.owasp.org
scanrepeat.com
contrastsecurity.com
owasp.org
auth0.com
hdivsecurity.com/[:]

İçerik Hakkında:
Sosyal Medyada Paylaş:
Facebook
Twitter
LinkedIn
Telegram