선릉역 1번 출구
Gophish 설치 및 사용 방법(3) 본문
Gophish의 캠페인 기능을 알아보자.
구분 | 설명 |
Email Sent | Groups의 사용자를 대상으로 Email Sent 현황 확인 가능 |
Email Opened | 사용자 중 Email Open 상태 확인 가능 |
Clicked Link | 사용자 중 첨부된 링크 클릭한 사용자 확인 가능 |
Submitted Data | 사용자 중 특정 데이터를 전송한 사용자 확인 가능 |
Email Reported | 아래 첨부된 사진 中 Reported로 변경한 대상자 확인 가능 |
오늘은 위의 기능 중 Email Opened 확인 방법을 알아본다
일단 먼저, 우리는 gophish를 구동하기 전 "config.json" 파일을 작성했다.
{
"admin_server": {
"listen_url": "0.0.0.0:3333",
"use_tls": false,
"cert_path": "gophish_admin.crt",
"key_path": "gophish_admin.key",
"trusted_origins": []
},
"phish_server": {
"listen_url": "0.0.0.0:80",
"use_tls": false,
"cert_path": "example.crt",
"key_path": "example.key"
},
"db_name": "sqlite3",
"db_path": "gophish.db",
"migrations_prefix": "db/db_",
"contact_address": "",
"logging": {
"filename": "",
"level": ""
}
}
위의 내용 중 phish_server의 url 부분이 외부에서 접근 가능해야하므로, AWS의 EC2를 설정하여 외부 접근 가능한 phishing 서버를 만들었다.
특정 도메인 기준으로, 도메인 + port 접근 시 admin server / phishing server으로 접근할 수 있다.
(나는 gophish.<도메인명>:3333으로 admin server를 설정했다)
Email Templates를 설정한다. 여기서 {{.Tracker}}는 이메일 클릭 확인에 필수요소로 꼭 작성해야한다.
└ {{.URL}}은 열람 시 내가 작성한 Landing Pages가 확인되며, Clicked Link를 확인할 수 있다.
아래와 같이 Campaign을 설정한다.
이때 가장 중요한 건 URL에 phishing server의 IP를 기재하는 것이며, 해당 phishing server의 IP가 외부에서도 접근 가능해야한다!
└ 해당 부분 오기재 시 이메일을 열람하여도, 서버에 수신이되지 않아 이메일 열람 여부 확인이 불가능하다.
서버에 기록되는 이메일 발송 로그는 아래와 같다.
time="2024-11-18TZ" level=info msg="Email sent" email="\"\" <이메일1@naver.com>" envelope_from=test1@gmail.com smtp_from=test@gmail.com
time="2024-11-18TZ" level=info msg="Email sent" email="\"\" <이메일2@naver.com>" envelope_from=test1@gmail.com smtp_from=test@gmail.com
time="2024-11-18TZ" level=info msg="Email sent" email="\"\" <이메일3@gmail.com>" envelope_from=test1@gmail.com smtp_from=test@gmail.com
수신된 이메일 클릭 시 서버에 기록되는 이메일 발송 로그는 아래와 같다.
time="2024-11-18TZ" level=info msg="<IP> - - [18/Nov/] \"GET /track?rid=4wrJxMd HTTP/1.1\" 200 95 \"\" \"Mozilla/ 5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via ggpht.com GoogleImageProxy)\""
└ Gmail 열람 시 로그
- 매개변수 rid 값을 URL 뒤에 기재하여 GET 요청을 한다.
- 해당 값은 위에서 Email Template에 기재한 {{.RId}}와 동일하다.(이메일 마다 고유한 값으로 생각됨)
- Gmail의 경우 이메일 열람만하여도 email open이 확인되었으나, naver의 경우는 확인 불가함
- Naver는 본문에 첨부되는 링크를 클릭하여야 Email Opened와 Clicked Link가 같이 확인됨
time="2024-11-18TZ" level=info msg="<IP> - - [18/Nov/] \"GET /?rid=jWOwh5n HTTP/1.1\" 200 117 \"\" \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36\""
└ Naver 링크 클릭 시 로그
- 위에 작성된 것처럼 Naver는 email opened와 click link가 동시에 집계된다.
- Gmail은 email opened와 clicked link가 각각 집계된다.
- email opened: 이메일 확인 시
- clieck link: 이메일 본문 내 기재된 링크 클릭 시
▼ 피싱 메일 Redirect
✅다음 시간에는 ssl 인증서 설정 및 본문 Data 작성에 대해 알아보자
그러나 아래 메일 부분은 Sending Profiles에 기재된 Email(username)으로 보내진다.
'Computer > Tool' 카테고리의 다른 글
Gophish 설치 및 사용 방법(2) (0) | 2024.11.12 |
---|---|
Gophish 설치 및 사용 방법(1) (1) | 2024.11.08 |
Port Scan With Zenmap (1) | 2024.09.19 |