1. Browser in the Browser (BitB)

- 2022.03에 새롭게 등장한 피싱공격

- 브라우저 창 안에 또 다른 브라우저 창이 열린 것처럼 꾸며내어 사용자들을 속여 계정 정보를 알아내는 피싱 공격

- 공격자가 HTML과 CSS 코드를 활용하여 정상적인 로그인 과정 등을 흉내

- SSO(Single Sign On_한 번의 인증으로 여러 사이트를 이용할 수 있게 하는 인증) 방식을 악용

 

2. 실습

① 기본 소스코드는 github에 공개되어 있는 Open Source를 사용

 

GitHub - mrd0x/BITB: Browser In The Browser (BITB) Templates

Browser In The Browser (BITB) Templates. Contribute to mrd0x/BITB development by creating an account on GitHub.

github.com

 

- git clone 명령을 사용해 파일 다운로드

[사진 1] 파일 다운로드

 

② pyphisher 다운로드 및 실행

- pyphisher: 파이썬을 사용한 피싱 도구로, 피싱을 위한 facebook, twitter, instagram 등 다양한 웹 사이트를 포함

 

GitHub - KasRoudra/PyPhisher: Easy to use phishing tool with 77 website templates. Author is not responsible for any misuse.

Easy to use phishing tool with 77 website templates. Author is not responsible for any misuse. - GitHub - KasRoudra/PyPhisher: Easy to use phishing tool with 77 website templates. Author is not res...

github.com

python3 pyphisher.py

 

- pyphisher 실행 시 피싱 사이트 생성을 위한 다양한 웹 페이지를 지원하는 것을 알 수 있음

> 실습에서는 [10] Gmail New 사용

> 실행 시 옵션 선택 사항에 대해서는 스킵 처리

[사진 2] pyphisher 최초 실행 화면

 

- 피싱을 위한 URL을 생성해주며, 해당 URL에 접속 시 Google의 로그인 창이 나타남

※ [사진 4]에서 pyphisher이 생성한 URL과 주소창의 URL이 다른 이유는 생성된 URL 접근 시 피싱 사이트 경고를 띄우며 URL이 변경됨.

[사진 3] URL 생성

 

[사진 4] pyphisher을 사용해 생성한 URL 접근 시 나타나는 Google의 로그인 창

 

③ 생성된 URL과 사용자를 속이기 위한 피싱 사이트의 설정을 진행

- index.html 파일의 내용 중 다음 부분을 피싱을 위한 설정으로 변경

기본 값 설명 변경
XX-TITLE-XX 페이지에 표시되는 제목 Sign in to Google account
XX-DOMAIN-NAME-XX 위장하려는 도메인 이름 https://login[.]gmail[.]com/
XX-DOMAIN-PATH-XX 도메인 경로 auth?id=1018o11090&sessid=90890890809
XX-PHISHING-LINK-XX iFrame에 삽입될 피싱 링크 pyphisher에 의해 생성된 URL

 

- index.html을 확인해보면 span 태그를 사용해 주소를 위조하는 것을 알 수 있음

> span 태크는 웹 페이지의 일부에 스타일을 적용시키기 위해(페이지를 꾸미기위해) 사용되는 태크

> 공격자의 피싱 사이트 주소 등을 span 태그를 사용해 사용자에게 보여주어 계정 정보 등 입력 유도

> 마지막 ifram 태그 내 src 값이 공격자가 생성한 피싱 주소

[사진 5] index.html 수정

 

④ 웹 서버 실행

-m moduele: 라이브러리 모듈을 스크립트로 실행

[사진 6] 웹 서버 실행

 

⑤ 외부에서 접속 시 로그인 팝업 창이 발생

- 로그인 폼이 적용되지 않아 ③의 과정에서 다른 URL로 변경해 보았지만, 정상적으로 적용되지 않음

[사진 7] 피싱 사이트 접근 시 로그인 팝업 발생

 

- Kali에서 localhost:8001로 접근 시 로그인 폼 정상 출력

[사진 8] 로그인 폼 출력

 

- 사용자가 정상적인 페이지로 착각하여 계정 정보를 입력하면, 공격자에게 PC 정보와 입력한 계정 탈취 및 파일로 저장

> 로그인 결과 403 에러(서버에 요청이 전달되었지만, 권한 때문에 거절되었다는 에러) 발생

[사진 9] 로그인 결과

 

⑥ 와이어샤크 확인

- 와이어샤크로 패킷을 확인해보면 입력한 계정 정보 확인(노출)

> 피싱페이지를 구성하는 방법에 따라 다른 결과를 보일 것으로 판단됨

[사진 10] 와이어샤크

 

3. 대응방안

① 출처가 불분명한 이메일, 메시지에 포함된 링크 클릭 금지
② URL 확인
③ 다중인증 사용
④ 팝업창이 웹 페이지 화면 내에서만 움직일 수 있으므로, 확인해보기 등 보안 규칙 준수

> 정상적인 웹 페이지 및 팝업의 경우 웹 페이지 밖으로 이동이 가능함

> 아래 동영상의 경우 실습에서 사용한 피싱 사이트로 팝업이 웹 페이지 밖으로 움직여지지 않음

+ Recent posts