전체 글

    [CVE-2019-8942] WordPress Image CROP RCE

    POC & Dockerfile : https://github.com/synod2/WP_CROP_RCE 본 문서에서는 Wordpress 4.9.9 및 5.0.1 이전 버전에서 발견된 취약점으로써, WordPress Image CROP RCE로 알려진 CVE-2019-8942와 CVE-2019-8943에 대해 다룬다. CVE 번호 공개일 설명 CVE-2019-8942 2019-2-19 wp_postmeta 테이블 값을 통해 악성코드가 담긴 PHP를 실행, 원격 코드 실행이 가능한 취약점 CVE-2019-8943 2019-2-19 업로드된 이미지의 크기정보 따위가 변경되는 동작 발생시, meta_input 파라미터를 이용하여 임의 경로에 파일을 저장할 수 있는 취약점 CVE-2019-8942 은 이미지 파일의..

    DOC 문서형 악성코드 2- trojan_EvilDoc-IcedID

    git : https://github.com/synod2/DOC_Malware/trojan_EvilDoc-IcedID any.run 에서 수집한 악성코드 샘플을 가지고 분석을 진행하였음. 악성코드 이름 : trojan_EvilDoc-IcedID.doc MD5 : 4A88E83B325AA23DA1E4BFA90B4F7C34 doc용 vba script를 오피스를 실행하지 않고도 추출할 수 있는 도구를 사용해 스크립트를 추출 후 분석을 진행하였다. VBA 스크립트 추출 먼저 info 명령어를 실행하여 해당 문서의 정보를 파악해보면 OLE2 형식 파일이 아니기 떄문에 분석할수는 없지만, 오피스 2007 이상의 XML 포맷 파일임이 확인되어 inflate 명령어를 실행하라는 결과를 볼 수 있었다. (OLE 파일 ..

    DOC 문서형 악성코드 1

    DOC 문서형 악성코드 .1 참고문 : https://blog.cystack.net/word-based-malware-attack/ 개요 문서형 악성코드 중 워드 기반 악성코드로, 워드 문서의 매크로 기능(Enable Content)을 사용할때 동작한다. 악성 워드파일 열람 - 매크로 실행 악성코드 DROP DROP된 악성코드 실행 word 악성코드의 경우 주로 위와 같은 형태로 동작하는데, 순서에 따라 구분해서 분석을 진행하였다. 환경 windows 7 Pro - service pack 2 office 2010 1. 워드파일 매크로 실행 test.doc 파일을 실행하면 아래와 같은 이미지가 나온다 무슨 말인지는 하나도 알아들을수가 없지만, 워드상에서 매크로를 차단하고 Enable Content를 할껀지..

    잘가 두루미

    학교 프로젝트용으로 쓰던 서버를 삭제했다. 종료도 눌러주고... ip할당도 해제하고... dns도 날리고.. 근데 종료중에서 안넘어간다. 죽기 싫은가봄 내일 숨통을 끊어야지

    퍼징 2일차 - 02.14

    어젠 하루종일 세팅만 하다가 시간이 다 간거같다. 파이썬 버전관리를 위해 콘다를 설치해서 사용한다. 콘다 설치 설치 완료후에 퍼저를 돌리기 위한 환경을 설정한다. conda create -n bff python=2.7 //가상 환경 생성 conda env list // 현재 내가 만든 환경 목록 이후 activate 환경명 과 같이 입력하면 내가 생성한 환경이 활성화된다. 커맨드라인 콘솔 맨 앞에 ()가 표시되면 가상환경이 활성화 된 것. 가상환경에서 bff를 사용해야 하기에, 필요한 라이브러리들은 별도로 설치를 해줘야된다. bff 2.8 기준으로 필요한 라이브러리들은 다음과 같다. numpy scipy pyYAML pywin32 python WMI pip install numpy scipy pyYAML..

    윈도우 퍼징 1일차 - 02.13

    "Fandu-버그 헌팅 튜토리얼" 문서 보면서 따라가보기 colean -window exploit guide bff 퍼저 설치 퍼징 손퍼징과 퍼저를 이용하는 방식의 두 가지가 존재함. 시드 파일 : 프로그램 크래시 발생시키는 원인 입력파일. 파일 형식별로 만들어져 있기도함. BFF 퍼저 뮤테이션 : 시드파일을 무작위로 바꿔가면서 진행 제네레이션 : 프로토콜과 프로그램 형식에 맞게 시드파일을 생성 프로그램 취약점을 찾기 위해선 프로그램의 구조에 대한 이해가 우선 시드로 사용될 파일 구조에 대한 이해도 필요 익스플로잇은 그 다음 BFF Fuzzer 다운로드 링크 기본적으로 환경이 세팅된 vmx를 제공함. 윈도우 버전도 있는거 같은데, 두가지를 다 시도해보자. 일단 윈도우 버전 - Windows Install..

    쉘쇼크에 대한 잡설

    쉘쇼크(CVE-2014-6271) 라는 취약점에 대해 최근들어 알게된 몇가지 내용들이 있다. 원래 알고있던 내용은, bash쉘을 사용하는 유닉스 기반 운영체제에서 발생하는 취약점으로써, 환경변수에 함수 형태로 명령어가 삽입되어 공격자가 원하는 쉘 명령어가 실행된다는 정도로 요약이 된다. () { :; } ; ls 위와같은 기본형을 가지고 있는데, 이것이 환경변수에 들어가면 ;(세미콜론) 이전은 함수로, 이후부터는 완전히 새로운 부분이라고 인식이 되고, 세미콜론 이후에 들어오는 쉘 명령어를 실행하게 된다는 것. 아, 환경변수에 들어간 문자열이 명령어가 되어 실행되는구나, 그런데 이게 왜 문제가 되지??? 라는 생각을 할 수 있다. 나도 쉘쇼크를 개념적으로만 알 뿐, 실제로 어떻게 동작하는지는 몰랐었고. 그..

    gdb 어셈블리 출력 방식 변경

    윈도우에서 wsl 설치시 기본문법이 intel로 되어있더라. 뭔가 리눅스에서 어셈을 볼땐 atat이 편해서 방식을 바꾸고 싶었다. 당연히 그 반대도 가능함. set disassembly-flavor at set disassembly-flavor intel

    리눅스 동적 라이브러리 ( 공유 라이브러리) 생성하기

    라이브러리 예제 코드 #include int add(int a,int b){ int result = 0; result = a+b; printf ("add : %d + %d = %d",a,b,result); return result; } 소스코드 -> 오브젝트파일 (.o) gcc -c file1.c 오브젝트파일 -> 공유 라이브러리 (.so) gcc -shared -o libfile1.so file1.o 이때 반드시 lib[파일명].so 와 같은 형식으로 만들어줘야 한다. 이후 라이브러리를 불러올 때 앞의 lib 와 뒤의 .so는 자동으로 빼고 로드된다. 라이브러리 경로 추가하기 총 두가지 방법이 존재한다. LD_LIBRARY_PATH 직접추가 export LD_LIBRARY_PATH=$LD_LIBRARY..

    DLL Injection : 1. 게임 인젝션 실습

    Assault Cube용 핵을 제작하기 위해서 DLL 인젝션을 해야하는데, 게임에 바로 적용해보기 전에 일단 어떤식으로 코드가 동작하는지 실습해본다. 대상은 예전에 쓰던 지뢰찾기 게임. 정상 프로세스에 내가 만든 DLL을 인젝션하고, DLL이 인젝션되면 메시지 박스가 뜨게끔 해보자. 진행시에는 백신을 끄고 진행해야한다. dll 인젝션 기능은 바이러스에서도 많이 사용하기에 악성코드로 인식하더라. #include #include #include #include //프로세스 이름을 인자로 하여 pid를 반환하는 함수 bool process_name_to_pid( __out DWORD& pid, __in const std::wstring& process_name ); //해당 PID를 가진 프로세스에 지정한 이..