[AWS] Gophish로 침해대응(악성메일) 훈련 진행기 4

이전글 보기

[AWS] Amazon SES와 Gophish로 침해대응(악성메일) 훈련 진행기 1

[AWS] zoho 메일 서비스와 Gophish로 침해대응(악성메일) 훈련 진행기 2

[AWS] EC2와 Gophish로 침해대응(악성메일) 훈련 진행기 3

 

 

들어가며

고피시 프레임워크의 설정방법부터 테스트 메일 전송까지 다룬다.

피싱메일 흐름도는 아래와 같이 구성되어 있으며, 고피시 프레임워크에서 메일전송, 랜딩페이지 구성, 정보 수집까지 한번에 처리할 수 있도록 구성되어 있다.

피싱메일 흐름도

 

 

Seding Profile

메일을 전송할 SMTP 서버 설정을 등록한다. 이전글에서 AWS SES 서비스를 등록했으므로 발급받은 정보를 입력한다. 포트의 경우 SSL을 사용하므로 465번 포트를 지정한다.

 

AWS의 IAM 사용자(user) 크리덴셜이 아닌 SES 서비스로부터 발급한 정보를 기입해야함에 유의한다.

 

 

Sending Profile 설정

 

 

 

Email Templates

피싱메일의 메일 본문을 작성한다. 지원하는 에디터를 이용하여 직접 꾸며도 되고 직접 HTML 태그를 이용하여 템플릿을 작성할 수도 있다. 실제 메일과 유사하게 하려면 다른 상용 메일 서비스에서 먼저 메일을 전송한 후에 수신한 메일 본문을 그대로 가져오기(Import)하는 것이 깔끔하다.

 

Email Templates 추가

 

위의 그림에서 'Import Email'을 선택하면 메일 오리지널 메시지를 삽입할 수 있는 창이 나온다.

 

메일 본문 보기

 

다른 상용 메일에서 확인한 '메일 본문' 전체를 복사하여 그대로 붙여넣기 한다. Import 기능을 이용하여 메일 본문을 준비하는 경우 본문 내 모든 URL이 고피시의 URL로 대체된다. 어느 링크를 클릭하든 랜딩페이지로 이동시키기 위함이며. 이를 원하지 않는 경우 메일 본문에 {{.URL}}로 변경하면 그부분만 고피시 주소로 변경하여 전송한다. 이와 같은 키워드를 지정하여 수신자별 이름을 넣는다거나 메일 주소를 본문에 포함시키거나 할 수 있다. 자세한 내용은 공식 문서에서 설명하고 있다.

https://docs.getgophish.com/user-guide/template-reference

 

Envelope Sender의 경우 메일의 보낸 사람을 지정할 수 있는 기능이다. 전송할 smtp 서버에 등록된 도메인 내에서 변경하여 전송이 가능하다. 

 

Subject는 메일의 제목을 지정한다.

 

템플릿을 입력하는 폼의 하단에는 Add Tracking Image 토글 버튼이 있는데 이는 이미지 원본의 위치(img 태그의 src 속성을 이용)를 공격자의 서버로 해서, 메일의 본문을 열람하는 순간 공격자의 서버로 요청이 발생하게끔하여 메일의 열람 여부를 확인하는 목적으로 사용한다. 이게 수신자가 Outlook을 사용하는 경우 허가되지 않은 도메인으로의 요청을 차단하도록 설정이 되어 있어 정상적으로 동작하지 않고 메일 본문 하단에 오류메시지만 띄우고 있어 비활성화하고 진행하였다.

 

 

Landing Pages

 

메일 본문에서 링크를 클릭했을 때 이동할 페이지의 내용을 구성한다. 템플릿과 동일하게 HTML로 구성하거나 다른 웹 페이지 주소를 import 하여 로드할 수 있다.

 

Landing Pages

 

Capture Submitted Data는 html의 'form' 태그에 데이터를 입력하여 전송하는 경우 해당 데이터를 저장(Capture)할 것인지 선택하는 토글 박스이다. POST 형식으로 전송하더라도, 전달받는 데이터는 GET 파라미터로 공격자의 서버로 전송된다. 이때 계정정보를 입력받으려고 시도하는 경우, ID와 패스워드가 평문으로 전송되며 DB에 저장될 때에도 평문으로 저장된다. 이는 고피시에서도 위험성을 경고하고 있으니 사용에 주의한다.

 

 

User&Groups

 

메일을 전송할 대상, 즉 훈련 대상 인원을 지정한다. csv 폼을 내려받아 이메일 주소만 입력한 후 한번에 입력할 수 있다. 다만 본문에 한글이 포함되는 경우 인코딩이 깨지는 문제가 있으니 이메일 주소만 입력한다.

 

User & Groups

 

 

Campaign

준비를 마쳤다면 이벤트를 생성한다.

 

Campaign 생성

 

Name : 캠페인 명

Email Template : 생성한 메일 본문 템플릿 명

Landing Page : 생성한 랜딩 페이지 명

URL : 랜딩페이지가 연결될 도메인 지정

Sending Profile : 메일을 전송할 프로파일(SMTP)

Groups : 메일을 수신할 사용자 목록

모든 폼을 입력 후 'Launch Campaign'을 클릭하면 메일 발송이 이루어진다.

 

 

 

디테일 살리기

 

하지만 랜딩 페이지에 아쉬움이 남는다. https 인증서 등록을 하지 않았다보니 브라우저에서 인증서 경고를 띄우고 있다. 

 

이 사이트는 보안 연결(HTTPS)이 사용되지 않았습니다.

 

일반 사용자 입장에서는 평소에는 안전한 연결이라며 아무렇지 않게 사용하다가도, 브라우저에서 저런 경고를 띄우면 일단 의심을 하게 된다. 이는 페이지 이탈을 하게 되는 이유가 되며 감염률 감소로 이어지게 되므로 인증서를 등록해주어 안전한 연결이 이루어지도록 한다.

 

다음 글에서 계속.

반응형