1. 백도어
  • 직역하면 뒷문, 공격자가 침투에 성공했을때 다음에 다시 침투하거나 추가적인 공격을 위해 만들어둠
  • 쉽게 말해 스파이가 담장을 넘어와 담장 어딘가에 개구멍을 파는것이라고 생각하면됨
  • 공격유형으로는 로컬, 원격 두 가지 방식이 있음
  • 접속방식으로는 다이렉트, 리버스 커넥션 방식

  1. 다운로더
  • 악성코드를 다운로드해서 설치하는 프로그램
  • ex) 트로이목마 형태의 다운로더

  1. 드롭퍼
  • 사용자 몰래 악성코드를 시스템에 설치하는 프로그램
  • ex) 트로이목마 형태의 드롭퍼

  1. 키로거
  • (우리가 아는 그것..) 피해자가 입력한 키 정보들을 공격자가 보거나 뺏어오는 것
  • 공격유형으로 하드웨어형 키로거와 소프트웨어형 키로거가 있음

  1. 혹스(Hoax)
  • 장난의 목적이 큼
  • 가짜 바이러스
  • ex) 행운의 편지, 당신은 XX를 보았습니다 등

  1. 익스플로잇
  • 소프트웨어의 취약점을 이용하여 시스템의 권한을 획득하는 프로그램

  1. 루트킷
  • 초기의 의미
    • root + kit
    • 좋은 의미의 백도어의 일종
  • 현재의 의미
    • 은닉
    • 보안프로그램으로부터 모습을 숨기고 커널단에 메모리를 상주시킴
      • 커널단은 발견 및 분석이 어렵다는 점을 이용

  1. 랫(RAT : Remote Administration Tools)
  • 원격 PC를 액세스하는 프로그램
  • 원격 관리 기능을 이용하여 피해자의 컴퓨터를 제어
  • 기능
    • 화면/캠 캡쳐 또는 제어
    • 파일 관리
    • 쉘 제어
    • 컴퓨터 제어
    • 레지스트리 관리
    • 마우스 및 키보드 제어
    • 채팅 기능
    • 하드웨어 과부하
    • 기타 다양한 소프트웨어 제품 관련 기능
  • 공격자가 많이 활용하는 프로그램



이후 교육원에서 실습한 내용

  1. 로컬 백도어 - passwd 실습
  • CentOS(40)
    • useradd -o -u 0 back
      -o -u 0 : UID가 0인데, 중복이 가능하게 해줌
    • passwd back
    • su khtest171
      없으면 만드셈, 뒷 숫자는 아무거나
    • id
    • su back
    • id



  1. 로컬 백도어 - SetUID를 통한 권한 상승
  • SetUID의 사용 예
    • 파일이 실행될 경우 부모 프로세스의 권한이 아닌 파일의 소유주 권한으로 실행되고 종료시 반환
    • SetUID 가 적용된 검색
      • find / -perm +4000 -exec ls -l {} \; 2> /dev/null
        0> 표준 입력
        1> 표준 출력
        2> 표준 에러
        /dev/null 리눅스판 휴지통(?)
    • SetUID가 설정되어 있는 대표적인 프로그램 : su, passwd
  • RUID(Real UID) / EUID (Effective UID)
    • passwd 파일이 관리자 권한으로 실행 될 때 일반 사용자 계정에 의한 실행인지 판별하여야 하며 이때 사용되는 것들
    • Linux에서 프로세스가 실행될 경우 두 가지 UID의 정보를 관리하며, SetUID에 의해 프로세스 UID가 적용될 경우 RUID는 변경되지 않고, EUID만 해당 파일의 소유주 권한으로 상승
    • 이로 인해 프로세스가 두 가지의 다른 UID를 갖게 되는데, 이 때 기본적인 접근 허가를 EUID로 수행하며, 필요할 경우 프로그램 내부적으로 RUID를 확인하여 SetUID를 통한 권한 상승인지 실제 해당 사용자인지를 분별할 수 있게 됨 ->  passwd 프로그램이 실행될 때 내부적으로 RUID를 확인하여 root 사용자인지 일반 사용자의 권한 상승인지를 확인하여 예외 처리 수행


  • 예제를 통해 RUID / EUID 권한 확인
    • getuid.c



    • 일반 권한




    • SetUID 권한


      > SetUID 설정


      > RUID와 EUID가 다름
  • 다른 예제
    • getuid.c



    • 일반 권한



  • SetUID를 이용한 권한 상승 백도어 예제
    • cd /tmp
    • vim backdoor.c


    • gcc -o backdoor backdoor.c
    • chmod 4755 backdoor

  • 정상 프로그램처럼 위장하여 백도어 제작
    • fake_ping.c



    • install.sh



  • 보안 대책
    • find 명령을 통해 SetUID가 부여된 프로그램 확인
    • SetUID가 부여된 프로그램들을 따로 목록화하여 관리
    • Partition Mounting 시 SetUID가 불필요한 파티션에서는 --nosuid 옵션으로 마운트


    • 무결성 점검 도구를 통해 기존의 SetUID 파일의 무결성 확보
      • tripwire



  1. RAT
  • Beast
    • 원격 PC 제어를 위한 프로그램
    • 기능
      • 백도어 생성(다이렉트, 리버스 커넥션 지원)
      • 레지스트리를 이용한 자동 실행
      • Anti-Virus, Firewall 종료 기능
      • Trogen-Horse 생성
      • 파일, 레지스트리, 화면, 웹캠, 프로세스 서비스, 클립보드 정보 변경 또는 탈취
      • 컴퓨터 제어(종료, 부팅, 크래쉬, 로그 아웃, ...)
      • 장난스러운 기능(CD-ROM Open/Lock, Hide Tray, Chatting, URL 이동, ...)
      • 프로그램 제어(업데이트, 연결 종료, 프로그램 삭제, ...)
      • 키로깅(Key Logger, Live Key Logging, ...)
      • 스캐닝(Scanning)
  • DarkComet RAT
    • Beast보다 강력한 기능을 제공
    • 리버스커넥션 기능을 주력
    • (이하 설명 생략)



  1. 윈도우 로컬 보안 정책(secpol.msc)
  • 컴퓨터 보안에 영향을 주는 설정들을 모아놓고 설정, 관리하는 도구
  • 로컬 보안 정책에서 설정 시 일반 관리 도구에서 설정 불가능
    • 예) 로컬 보안 정책 -> 방화벽 설정에서 방화벽 설정 변경
    • 방화벽 관리도구(고급 보안이 설정된 윈도우 방화벽)에서 설정 불가능
  • Home Edition에서는 로컬 보안 정책을 지원하지 않음(보이지 않음)


'Malware > Malware Theory' 카테고리의 다른 글

[보안프로젝트] 악성코드 분석 내용 정리  (0) 2018.01.24
악성코드 주요행위 (1)  (0) 2018.01.24
악성코드와 WinAPI의 관계  (0) 2018.01.24
악성코드 분석 흐름  (0) 2018.01.24

http://cafe.naver.com/boanproject


정리한 내용들 기록 예정.


정제되지 않은 내용들 세부 정리후 공개예정

'Malware > Malware Theory' 카테고리의 다른 글

멀웨어(Malware) 종류  (0) 2018.04.04
악성코드 주요행위 (1)  (0) 2018.01.24
악성코드와 WinAPI의 관계  (0) 2018.01.24
악성코드 분석 흐름  (0) 2018.01.24

+ Recent posts