o365-attack-toolkit을 사용하면 운영자가 oauth 피싱 공격을 수행할 수 있습니다.
우리는 정적 정의의 이전 모델에서 실시간으로 계정과 완전히 "상호작용"하는 모델로 전환하기로 결정했습니다.
피싱 엔드포인트는 OAuth 토큰 피싱을 수행하는 HTML 파일을 제공하는 역할을 담당합니다.
이후 토큰은 백엔드 서비스에서 정의된 공격을 수행하는 데 사용됩니다.
관리 인터페이스를 활용하여 Microsoft Graph API에서 추출된 정보를 검사할 수 있습니다.
사용자 이메일은 관리 인터페이스를 사용하여 특정 키워드를 검색하여 액세스할 수 있습니다. 키워드가 포함된 이메일을 다운로드하는 기존 기능이 중단되었습니다.
이 도구의 새 버전을 사용하면 손상된 사용자가 보낸 특정 이메일 주소로 첨부 파일을 포함한 HTML/TXT 이메일을 보낼 수 있습니다. 이 기능은 사용자로부터 스피어 피싱 이메일을 보내는 것이 더 그럴듯하기 때문에 매우 유용합니다.
Microsoft Graph API를 사용하면 OneDrive, 비즈니스용 OneDrive 및 SharePoint 문서 라이브러리의 파일에 액세스할 수 있습니다. 사용자 파일은 관리 인터페이스를 사용하여 대화형으로 검색하고 다운로드할 수 있습니다. 키워드가 있는 파일을 다운로드하는 기존 기능이 중단되었습니다.
OneDrive/Sharepoint에 호스팅된 사용자 문서는 Graph API를 사용하여 수정할 수 있습니다. 이 툴킷의 초기 버전에서는 마지막 10개 파일이 사전 정의된 매크로를 통해 백도어됩니다. 이는 레드팀 운영 중에는 위험했기 때문에 사용이 제한되었습니다. 이러한 이유로 우리는 공격을 더 효과적으로 제어하기 위해 수동 파일 교체 기능을 구현했습니다.
cd %GOPATH%
git clone https://github.com/mdsecactivebreach/o365-attack-toolkit
cd o365-attack-toolkit
dep ensure
go build
예시 구성은 아래와 같습니다.
[server]
host = 127.0.0.1
externalport = 30662
internalport = 8080
[oauth]
clientid = [REDACTED]
clientsecret = [REDACTED]
scope = "offline_access contacts.read user.read mail.read mail.send files.readWrite.all files.read files.read.all openid profile"
redirecturi = "http://localhost:30662/gettoken"
이 도구 키트를 사용하기 전에 Azure Portal에서 애플리케이션을 만들어야 합니다. Azure Active Directory -> 앱 등록 -> 애플리케이션 등록으로 이동합니다.
애플리케이션을 생성한 후 구성 파일에 애플리케이션 ID를 복사합니다.
다음 이미지에 표시된 대로 수행할 수 있는 클라이언트 암호를 생성해야 합니다.
구성 파일에서 클라이언트 암호를 업데이트합니다.
관리 인터페이스를 통해 운영자는 손상된 사용자와 상호 작용할 수 있습니다.