XSS (6) Veil 프레임워크-1

밍기적·2023년 1월 3일
0

웹해킹

목록 보기
27/35

Veil-Framework

  • Veil은 안티 바이러스 솔루션을 우회하도록 하고 메타스플로잇 페이로드를 생성하도록 설계된 도구

Metasploit

  • 여러 보안 취약점 및 침투 테스트 등을 위해 만들어진 거대한 프레임워크
  • 대부분 ruby 언어로 작성됨
  • 침투 테스트를 할 수 있는 기능들을 체계적으로 가지고 있음
  • 페이로드라는 악성코드 또한 메타스플로잇 프레임워크에 내장된 모듈 중 하나

구조

Payload

  • 멀웨어 즉 웜, 바이러스, 트로이목마 같은 악의적인 목적을 가지고 데이터를 유출, 훼손, 개인 정보 유출, 원격 사용, 권한 상승 등 여러가지 악성 행위를 시도할 수 있는 "rootkit"이라고도 함

백도어 파일은 그저 파일일 뿐입니다

  • 안티 바이러스 프로그램으로 검출이 가능
    • 안티 바이러스 프로그램 내부에 존재하는 시그니처 데이터베이스 파일을 통해 검출함
  • Veil-Framework는 안티 바이러스 프로그램으로 감지되지 않는 백도어를 생성함

백도어가 실행되면 해당 컴퓨터에 대한 전체 액세스 권한이 부여됩니다

  • 이것을 기본적으로 해킹 후 시스템이 원하는 모든 것을 할 수 있도록 해줌

veil을 명령어로 프레임워크를 시작합니다

기본적으로 2개의 툴이 로드되어있습니다

  1. Evasion
    • 페이로드를 난독화, 암호화 등을 통해 읽기 어렵게 하여 여러 안티바이러스 장비를 우회할 수 있도록 도와주는 도구
  2. Oranance
    • 사용자가 원하는 형태로 쉘 코드를 생성하고 만들게 도와주는 도구

우회를 위해 1번을 사용합니다

use 1 //을 통해 Envasion을 사용합니다 

41개의 페이로드가 로드되었으며 이용가능한 명령어들이 보여집니다

먼저 list를 통해 로드된 페이로드가 무엇인지 확인했습니다

페이로드들은 특정한 이름 원칙을 따르고 있습니다

프로그래밍언어

  • 특정 언어로 대상 컴퓨터를 이해하도록 매핑 됨

미터프리터

  • 메타스플로잇에서 설계한 페이로드인 미터프리터를 사용함
  • 미터프리터라는 페이로드를 생성하는데 목적을 둠

페이로드를 이용하여 대상 컴퓨터를 완전하게 제어가 가능하도록 합니다

정상적인 프로세스는 메모리에서 실행됩니다

  • 감지하기가 어려우며 많은 발자국을 생성하지 않습니다

연결을 설정하는 데 사용할 방법을 알려주는 세 번째 부분

  • rev_https
  • rev는 역방향
  • https는 연결을 설정하는 데 사용되는 프로토콜
  • 역방향 HTTPS 연결을 생성한다는 것을 보여줌

역방향 연결은 안티 바이러스 프로그램에서 감지되지 않습니다

  • 일반적으로 사람들이 웹사이트에 연결하는 방법이라고 생각함
  • 특정 컴퓨터에서 연결을 막는 여러가지 방법들이 존재할 수 있기 때문에 실용적이다

15번째 페이로드를 사용합니다

여러가지 옵션들이 나타납니다

기본적으로 역방향 연결 페이로드이기 때문에 페이로드가 연결을 시도할 IP 주소를 작성해야 합니다

  • LHOST에 설정함
  • 설정을 위해서 set 명령어를 사용함

IP주소와 포트 번호를 설정한 뒤 options 명령어로 현재 까지 설정한 옵션들을 확인할 수 있습니다

매우 큰 시그니처 데이터베이스를 가지고 있는 안티 바이러스 프로그램의 경우 파일과 백도어의 시그니처를 비교하는 일을 하고 있습니다

  • 파일 중 하나가 일치하게 되면 백도어 또는 바이러스라고 판단하고 삭제하게 됨

백도어 파일은 시그니처 데이터베이스를 우회하고 백신을 우회할 수 있도록 가능한 많이 수정하려고 합니다

Veil의 경우 옵션을 이용하여 이를 우회할 수 있습니다

시그니처 우회를 위해 옵션에서 프로세스와 SLEEP 옵션 또한 변경했습니다

이제 generate로 백도어 파일 생성 후 파일이름을 작성하면 파일이 하나 생성됩니다

생성한 실행 파일은 특정 위치에 저장됩니다

이제 해당 실행 파일을 희생자에게 전달하며 실행하도록 하면 리버스쉘이 실행되어 공격자의 컴퓨터와 연결이 됩니다

페이로드를 이전에 Veil 프레임워크에서 작성한 페이로드와 같이 설정합니다

또한 옵션에서 보여지는 것들을 수정합니다

Veil 프레임워크에서 생성한 백도어 프로그램은 실행파일로 /var/lib/veil/output/compiled 디렉터리에 생성됩니다

실제로는 이렇게 전송하지 않지만 희생자의 컴퓨터에 백도어를 실행시키기 위해 리눅스의 apache2 웹 서버를 이용합니다

아파치 웹 서버에서 보여지는 페이지는 /var/www/html에 index.html이며 여기에 새로운 폴더를 하나 생성합니다

생성한 폴더는 아파치 웹 서버가 실행중인 IP주소/exploit 으로 접근이 가능합니다

리눅스에서 아파치 웹 서버를 실행합니다

이후 아파치 웹 서버가 구동중인 IP 주소를 URL로 검색하면 index.html 파일이 보여지게 됩니다


0개의 댓글