Okta Security

htARTE (HackTricks AWS Red Team Expert)를 통해 **제로**부터 **히어로**까지 **AWS 해킹**을 배우세요!

HackTricks를 지원하는 다른 방법:

기본 정보

Okta, Inc.는 클라우드 기반 소프트웨어 솔루션으로 식별 및 액세스 관리 부문에서 인정받고 있습니다. 이러한 솔루션은 다양한 현대 애플리케이션에서 사용자 인증을 간소화하고 보안하는 데 설계되었습니다. 이는 민감한 데이터를 보호하려는 기업 뿐만 아니라 신원 제어를 애플리케이션, 웹 서비스 및 장치에 통합하려는 개발자들에게도 도움이 됩니다.

Okta의 주요 제품은 Okta Identity Cloud입니다. 이 플랫폼은 다음을 포함한 제품 스위트를 제공합니다.

  • 단일 로그인 (SSO): 여러 애플리케이션에서 하나의 로그인 자격 증명을 사용하여 사용자 액세스를 간소화합니다.

  • 다중 요소 인증 (MFA): 다중 형식의 확인을 요구하여 보안을 강화합니다.

  • 수명주기 관리: 사용자 계정 생성, 업데이트 및 비활성화 프로세스를 자동화합니다.

  • Universal Directory: 사용자, 그룹 및 장치의 중앙 관리를 가능하게 합니다.

  • API 액세스 관리: API 액세스를 보호하고 관리합니다.

이러한 서비스는 데이터 보호를 강화하고 사용자 액세스를 간소화하여 보안과 편의성을 모두 향상시키기 위해 함께 작동합니다. Okta 솔루션의 다양성으로 인해 대기업, 소기업 및 개별 개발자 모두에게 인기가 있습니다. 2021년 9월에 마지막으로 업데이트된 정보에 따르면 Okta는 신원 및 액세스 관리 (IAM) 분야에서 주목할만한 기업으로 인정받고 있습니다.

Okta의 주요 목표는 다른 사용자 및 그룹에 대한 외부 애플리케이션 액세스를 구성하는 것입니다. Okta 환경에서 관리자 권한을 침해하면 회사가 사용하는 다른 모든 플랫폼을 고도로 침해할 수 있습니다.

Okta 환경의 보안 검토를 수행하려면 관리자 읽기 전용 액세스를 요청해야 합니다.

요약

사용자 (Okta에 저장될 수 있거나 구성된 Identity Providers에서 로그인하거나 Active Directory 또는 LDAP를 통해 인증될 수 있음)가 있습니다. 이러한 사용자는 그룹에 속할 수 있습니다. 또한 인증자가 있습니다: 비밀번호와 같은 인증을 위한 다양한 옵션이 있으며 WebAuthn, 이메일, 전화, okta verify와 같은 여러 2FA가 있을 수 있습니다(활성화 또는 비활성화될 수 있음)...

그런 다음, Okta와 동기화된 애플리케이션이 있습니다. 각 애플리케이션은 정보를 공유하기 위해 Okta와 매핑해야 합니다(예: 이메일 주소, 이름 등). 게다가, 각 애플리케이션은 사용자가 애플리케이션에 액세스하기 위해 필요한 인증자를 나타내는 인증 정책에 포함되어 있어야 합니다.

가장 강력한 역할은 슈퍼 관리자입니다.

공격자가 관리자 액세스로 Okta를 침해하면 Okta를 신뢰하는 모든 앱이 고도로 침해될 가능성이 매우 높습니다.

공격

Okta 포털 찾기

일반적으로 회사의 포털은 companyname.okta.com에 위치합니다. 그렇지 않은 경우 companyname의 간단한 변형을 시도하세요. 찾을 수 없는 경우, 조직이 Okta 포털을 가리키는 **okta.companyname.com**과 같은 CNAME 레코드를 가질 수도 있습니다.

Kerberos를 통한 Okta 로그인

**companyname.kerberos.okta.com**이 활성화되어 있는 경우, Kerberos가 Okta 액세스에 사용되며 일반적으로 Windows 사용자의 MFA 우회됩니다. AD에서 Kerberos로 인증된 Okta 사용자를 찾으려면 **getST.py**를 적절한 매개변수와 함께 실행하세요. AD 사용자 티켓을 획득한 후, Rubeus 또는 Mimikatz와 같은 도구를 사용하여 제어된 호스트로 주입하여 clientname.kerberos.okta.com이 인터넷 옵션 "내부" 영역에 있는지 확인하세요. 특정 URL에 액세스하면 Kerberos 티켓 수락을 나타내는 JSON "OK" 응답이 반환되어 Okta 대시보드에 액세스할 수 있습니다.

Okta 서비스 계정을 위임 SPN으로 침해하면 Silver Ticket 공격이 가능합니다. 그러나 Okta가 티켓 암호화에 AES를 사용하므로 AES 키 또는 평문 암호를 소유해야 합니다. **ticketer.py**를 사용하여 피해자 사용자를 위한 티켓을 생성하고 브라우저를 통해 전달하여 Okta로 인증할 수 있습니다.

공격을 확인하려면 https://trustedsec.com/blog/okta-for-red-teamers를 확인하세요.

Okta AD 에이전트 탈취

이 기술은 사용자를 동기화하고 인증을 처리하는 Okta AD 에이전트에 액세스하는 것을 포함합니다. **OktaAgentService.exe.config**에서 AgentToken을 DPAPI를 사용하여 검사하고 복호화함으로써 공격자는 잠재적으로 인증 데이터를 가로채고 조작할 수 있습니다. 이를 통해 Okta 인증 프로세스 중에 사용자 자격 증명을 평문으로 모니터링하고 캡처할 뿐만 아니라 인증 시도에 응답할 수 있어 무단 액세스를 허용하거나 Okta를 통한 보편적 인증(‘스켈레톤 키’와 유사)을 제공할 수 있습니다.

공격을 확인하려면 https://trustedsec.com/blog/okta-for-red-teamers를 확인하세요.

관리자로서 AD 탈취

이 기술은 먼저 OAuth 코드를 획득한 다음 API 토큰을 요청하여 Okta AD 에이전트를 탈취하는 것을 포함합니다. 토큰은 AD 도메인과 연결되며 커넥터가 가짜 AD 에이전트를 설정하기 위해 명명됩니다. 초기화를 통해 에이전트가 인증 시도를 처리할 수 있으며 Okta API를 통해 자격 증명을 캡처할 수 있습니다. 이 프로세스를 간소화하기 위한 자동화 도구가 제공되며 Okta 환경 내에서 인증 데이터를 가로채고 처리하는 원활한 방법을 제공하여 Okta를 통한 보편적 인증을 가능하게 합니다.

공격을 확인하려면 https://trustedsec.com/blog/okta-for-red-teamers를 확인하세요.

Okta 가짜 SAML 제공자

공격을 확인하려면 https://trustedsec.com/blog/okta-for-red-teamers를 확인하세요.

이 기술은 가짜 SAML 제공자를 배포하는 것을 포함합니다. 특권 계정을 사용하여 외부 식별 제공자(IdP)를 Okta의 프레임워크에 통합함으로써 공격자는 IdP를 제어하고 원하는대로 인증 요청을 승인할 수 있습니다. 이 프로세스는 Okta에 SAML 2.0 IdP를 설정하고 IdP 단일 로그인 URL을 로컬 호스트 파일을 통해 리디렉션하기 위해 조작하고, 자체 서명된 인증서를 생성하고, Okta 설정을 구성하여 사용자 이름 또는 이메일과 일치하도록 설정하는 것을 포함합니다. 이러한 단계를 성공적으로 실행하면 개별 사용자 자격 증명이 필요하지 않은 상태에서 Okta 사용자로 인증할 수 있으며, 액세스 제어를 크게 향상시켜 감지되지 않은 방식으로 액세스를 제공합니다.

Evilgnix를 사용한 Okta 포털 피싱

이 블로그 게시물에서 Okta 포털에 대한 피싱 캠페인을 준비하는 방법이 설명되어 있습니다.

동료 위장 공격

각 사용자가 가질 수 있고 수정할 수 있는 속성 (예: 이메일 또는 이름)은 Okta에서 구성할 수 있습니다. 사용자가 수정할 수 있는 속성을 ID로 신뢰하는 애플리케이션이 있다면, 해당 플랫폼에서 다른 사용자를 위장할 수 있습니다.

따라서, 앱이 userName 필드를 신뢰한다면 (일반적으로 해당 필드를 변경할 수 없기 때문에), 이를 변경할 수 없을 것입니다. 그러나 예를 들어 **primaryEmail**을 신뢰한다면 해당 필드를 동료의 이메일 주소로 변경하고 위장할 수 있을 것입니다 (해당 이메일에 액세스하고 변경을 수락해야 합니다).

이 위장은 각 애플리케이션이 어떻게 구성되었는지에 따라 달라집니다. 수정한 필드를 신뢰하고 업데이트를 수락하는 앱만이 위험에 노출됩니다. 따라서, 해당 필드가 있는 경우 앱은 이 필드를 활성화해야 합니다:

Okta 설정에 해당 필드가 없지만 취약한 다른 앱도 본 적이 있습니다 (최종적으로 다른 앱은 서로 다르게 구성됩니다).

각 앱에서 누구든지 위장할 수 있는지 확인하는 가장 좋은 방법은 시도해 보는 것입니다!

행동 탐지 정책 회피

Okta의 행동 탐지 정책은 만날 때까지 알 수 없지만, 이를 우회하는 것은 Okta 애플리케이션을 직접 대상으로 하는 것으로 달성할 수 있습니다. Okta 액세스 토큰을 사용하여 주요 Okta 대시보드를 피하고 애플리케이션별 Okta URL에서 토큰을 재생합니다.

주요 권장 사항은 다음과 같습니다:

  • 캡처된 액세스 토큰을 재생할 때 인기 있는 익명화 프록시 및 VPN 서비스를 사용하지 않습니다.

  • 클라이언트와 재생된 액세스 토큰 사이에 일관된 사용자 에이전트 문자열을 보장합니다.

  • 동일한 IP 주소에서 다른 사용자의 토큰을 재생하지 않습니다.

  • Okta 대시보드에 대한 토큰을 재생할 때 주의를 기울입니다.

  • 피해자 회사의 IP 주소를 알고 있다면, 해당 IP 또는 해당 범위로의 트래픽을 제한하여 다른 모든 트래픽을 차단합니다.

Okta 강화

Okta에는 가능한 다양한 구성이 있으며, 이 페이지에서는 이러한 구성을 검토하여 가능한 안전하게 유지하는 방법을 찾을 수 있습니다:

pageOkta Hardening

참고 자료

htARTE (HackTricks AWS Red Team Expert)로 AWS 해킹을 처음부터 전문가까지 배우세요 htARTE (HackTricks AWS Red Team Expert)!

HackTricks를 지원하는 다른 방법:

最終更新