
피싱 캠페인 전송을 위한 매우 체계적이고 유연한 스크립트
피싱 캠페인 전송을 위한 매우 체계적이고 유연한 스크립트입니다.
goPhish도 훌륭한 선택입니다. 하지만 저는 유연성과 단순함을 동시에 선호합니다. goPhish를 여러 번 사용했지만, 어떤 시점에서는 압도적이거나 융통성이 없다고 느꼈습니다. 대부분의 경우, 모든 통계가 필요하지 않고, 피싱 캠페인을 준비하고 전송할 수 있는 유연한 방법만 필요합니다. goPhish를 사용할 때마다 웹사이트 추가 방법, 특정 요청 전달 방법 등을 문서에서 찾아봐야 했습니다. 그래서 goCabrito와 getCabrito를 만들었습니다.
getCabrito는 선택적으로 이메일 추적을 위한 고유 URL을 생성합니다.
각 이메일에 대한 해시를 생성하여 URL 또는 이미지 URL 끝에 추가하고, 이러한 정보를 getCabrito가 가져오고 서비스하는 데 유용한 다른 정보와 함께 저장합니다. 이 기능이 goCabrito와 getCabrito 스크립트를 연결하는 유일한 부분이니 걱정하지 마세요!
제가 좋아하는 식당 중 하나의 이름이고, 팀원 중 한 명이 선택한 이름입니다.
젬 의존성 설치
sudo apt-get install build-essential libsqlite3-dev
젬 설치
gem install mail sqlite3
goCabrito.rb — A simple yet flexible email sender.
Help menu:
-s, --server HOST:PORT SMTP server and its port.
e.g. smtp.office365.com:587
-u, --user USER Username to authenticate.
e.g. [email protected]
-p, --pass PASS Password to authenticate
-f, --from EMAIL Sender's email (mostly the same as sender email)
e.g. [email protected]
-t, --to EMAIL|LIST|CSV The receiver's email or a file list of receivers.
e.g. [email protected] or targets.lst or targets.csv
The csv expected to be in fname,lname,email format without header.
-c, --copy EMAIL|LIST|CSV The CC'ed receiver's email or a file list of receivers.
-b, --bcopy EMAIL|LIST|CSV The BCC'ed receiver's email or a file list of receivers.
-B, --body MSG|FILE The mail's body string or a file contains the body (not attachements.)
For click and message opening and other trackings:
Add {{track-click}} tag to URL in the HTML message.
eg: http://phisher.com/file.exe/{{track-click}}
Add {{track-open}} tag into the HTML message.
eg: <html><body><p>Hi</p>{{track-open}}</body></html>
Add {{name}} tag into the HTML message to be replaced with name (used with --to CSV).
eg: <html><body><p>Dear {{name}},</p></body></html>
Add {{num}} tag to be replaced with a random phone number.
-a, --attachments FILE1,FILE2 One or more files to be attached seperated by comma.
-S, --subject TITLE The mail subject/title.
--no-ssl Do NOT use SSL connect when connect to the server (default: false).
-g, --groups NUM Number of receivers to send mail to at once. (default all in one group)
-d, --delay NUM The delay, in seconds, to wait after sending each group.
-P, --profile FILE A json file contains all the the above settings in a file
-D, --db FILE Create a sqlite database file (contains emails & its tracking hashes) to be imported by 'getCabrito' server.
--dry Dry test, no actual email sending.
-h, --help Show this message.
Usage:
goCabrito.rb <OPTIONS>
Examples:
$goCabrito.rb -s smtp.office365.com:587 -u [email protected] -p P@ssword1 \
-f [email protected] -t targets1.csv -c targets2.lst -b targets3.lst \
-B msg.html -S "This's title" -a file1.docx,file2.xlsx -g 3 -d 10
$goCabrito.rb --profile prf.json
dry 모드로 캠페인 프로필을 실행합니다 (프로필 파일의 dry 값 확인)ruby goCabrito.rb -P CUSTOMER/3/camp3.json --dry
--dry 스위치를 제거하고 설정 파일에서 dry 값이 false인지 확인합니다.요즘 많은 클라우드 기반 이메일 공급업체가 기본적으로 SMTP 인증을 차단합니다 (예: Office365, GSuite). 이로 인해 오류가 발생합니다. 이 문제를 해결하기 위해 다양한 공급업체에서 SMTP 인증을 활성화하는 데 도움이 되는 몇 가지 단계를 안내합니다.
SMTP 인증을 전역적으로 활성화하려면 PowerShell을 사용합니다.
$ sudo pwsh
Install-Module -Name PSWSMan -Scope AllUsers
Install-WSMan
Install-Module -Name ExchangeOnlineManagement
Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline -InlineCredential
위 명령은 Office365 관리자 자격 증명을 입력하라는 메시지를 표시합니다.
PowerShell credential request
Enter your credentials.
User: [email protected]
Password for user [email protected]: **********
Connect-ExchangeOnline -UserPrincipalName [email protected]
Set-TransportConfig -SmtpClientAuthenticationDisabled $false
Set-CASMailbox -Identity [email protected] -SmtpClientAuthenticationDisabled $false
Get-CASMailbox -Identity [email protected] | Format-List SmtpClientAuthenticationDisabled
Get-TransportConfig | Format-List SmtpClientAuthenticationDisabled
그런 다음 다음 단계를 따르세요.