해킹 40

Process Hollowing 기법 실습

#Process Hollowing #Malware - Process Hollowing 이란? Process Hollowing 은 간략히 설명하면, 정상적인 타겟파일을 suspended 상태의 프로세스로 실행 시킨 다음, 해당 프로세스 안에 악성코드 데이터를 삽입시키고 suspend 상태를 해제함과 동시에 악성코드를 정상 프로세스로 둔갑시켜 실행시키는 방식이다. CreateProcess -> NtUnmapViewOfSection -> VirtualAlloc -> WriteProcessMemory -> SetContextThread -> ResumeThread 의 흐름으로 진행된다. - 예제로 보는 Process Hollowing - OS 환경 Windows 10(x86) - 소스 #include #incl..

CSP(Content-Security-Policy) 정리

#CSP #Content-Security-Policy #Web 공격자가 xss 로 웹에 허용되지 않은 script 를 삽입하거나 외부페이지에 혹은 외부페이지로 부터 HTTP 요청 을 보내는 것을 막을 수 있도록 Response Header 에 마련된 정책이다. CSP 는 웹 서버에서 Content-Security-Policy 헤더를 리턴하도록 해야 사용가능하다. (PHP, Python 등에서) 혹은 정적인 html 페이지에서 태그를 활용할 수도 있다. 아래는 예제 코드 1. 실행가능한 소스, 함수 등을 제한하여 외부의 XSS 방지 2. 외부 -> 웹페이지로 로드 되는 URL, Protocol 등을 제한하여 패킷 스니핑 공격 방지 실제 사용사례 위 html 태그에서 보이듯이 content 값에 따라 무언가..

<보안 study>/웹 2021.08.23

[WinAPI] 리소스를 분석, 해체 해보자

#리소스 분석 API #FindResource #LoadResource #LockResource #SizeOfResource 악성코드에 리소스를 심어서 숙주파일을 뽑아내어 실행시키는 악성코드를 분석해보았다. 관련 API가 빈번히 나오는 것 같아서 정리해본다. 1. HRSRC FindResource( HMODULE hModule, LPCSTR lpName, LPCSTR lpType); #include 로 불러올 수 있다. 껍데기 파일에서 숙주 파일인 리소스를 찾는 함수이다. 인자들의 조건이 맞아떨어지면 리소스 정보 block 에 대한 핸들 을 리턴한다. Return value 에 대한 msdn 설명 Type: HRSRC If the function succeeds, the return value is a ..

ProcMon "Unable to load Process Monitor device driver" 에러

#ProcessMonitor #VMware #ProcMon Win7 Ultimate x64 버전이 깔린 VMware 에서 Process Monitor 가 실행이 원활히 안되었다. 해당 오류창을 뿜뿜 뿜어냈는데, 알아보니 윈도우 7 특정버전의 보안업데이트가 미비하여 실행이 안되는거라고... 아래 링크 파일 해당 VM 에서 실행시키면 된다. Download Security Update for Windows 7 for x64-based Systems (KB3033929)

VMware Windows 에서 RDP 환경 구축하기

#VMware #RDP #원격데스크탑 #분석환경 노트북을 하나 새로 장만했다. 구형 노트북은 그냥 집에 두고 VM 돌려서 원격이나 붙일 참이다. 대강 망 구성(?) 이라고 하면 이렇다. 집에서 그냥 공유기 하나 붙잡고 쓸 때의 상황 집 밖에서 공인IP를 통해 통신할 때의 상황 후자는 급하게 필요한 상황이 아니어서 일단 전자를 기준으로 해보자. 첫 번째로는 해당 Windows VM 세팅에 들어간다. 그리고 Network Adapter 세팅에서 커넥션 타입을 Bridged 로 설정해놓는다. 아마 기본적으로 대부분은 NAT 로 쓰고 있어서 호스트 PC 랑은 다른 대역을 쓰면서 원하면 포워딩을 했을 것이다. Bridged 세팅은 호스트 PC 의 공유기에 VM 이 실제로 하나 더 물려있는 것처럼 물리 공유기와 직..

사지방에서 포렌식 선보인 이야기

군대에서 포렌식을 쓸 일은 용사입장에서 웬만하면 없지 싶다. 지난 4월, 하루는 조식 짬을 먹다가 갑자기 옆 대대로 호출을 당했다. 통신쪽에 있으면 무조건 컴퓨터 좀 고쳐달라는 (혹은 포맷) 부탁인 줄 알았으나 생각보다 재미있는 일이 있었다. " 사지방 PC 한 대 누가 비번 잠그고 도망가서 1달 동안 못쓰고 있어 " 그래서 범인이 누구인지 찾아서 특정해달라는 그런 문의(?) 였다. 조금 걸리는게 몇 가지 있긴 하지만 정당한 절차와 허락을 받고 본의 아니게 포렌식을 선보이게 되었다. 일단 걸린비번은 다른 전우들을 위해 얼른 풀어 뚫어주고, 범인은 사지방 PC에 깔린 싸지방 프로그램도 망가뜨려놨는지 디스크 복원 프로그램도 작동하지않은 상태로 일반 순정 윈도우처럼 컴퓨터가 동작하고 있었다. 하지만, 오히려 ..

<사는이야기> 2021.05.16

암호화폐 사기(scam) 탐방기

m.etnews.com/20201030000148 로맨스 암호화폐 스캠을 아시나요?...데이트 앱 악용, 투자자 피해 속출 #A씨는 사회관계망서비스(SNS)에서 이성 B씨를 알게 됐다. 어느날 B씨는 쏠쏠한 수익을 올렸다는 해외 소재 암호화폐 투자사 홈페이지를 소개했다. A씨는 B씨가 소개한 투자사 가상지갑으로 비트 www.etnews.com www.blockmedia.co.kr/archives/162296 암호화폐 거래소, 피싱 사기 주의보…사이트 주소 확인해야 | 블록미디어 암호화폐 거래소를 사칭한 피싱 사기가 빈번하게 일어나고 있다. 각 거래소는 이용자들에게 거래소 사이트 주소가 제대로 적혀있는지 확인하라고 당부했다. ▲ 코인원을 사칭한 피싱 메시지들( www.blockmedia.co.kr 꽤 최근..

<사는이야기> 2020.12.28

DreamHack CTF 문제에서 배우는 NOSQL Injection

당직근무 마치고 근무취침 잠깐 취하고 나니까 드림핵 ctf 가 시작되어있었다. 대회가 1시간여밖에 안남아서 부랴부랴 한 문제 풀었는데, 나에겐 조금 낯선 NOSQL 에 대해 공부할 수 있었다. 이번 글은 DreamHack CTF 의 Web 분야문제 중, Mango 문제도 살펴보는 겸 Not Only SQL Injection 에 대해 공부하는 글이다. - NOSQL 이란? Not Only SQL 이란 뜻으로 단순히 mysql,OracleDB 같은 RDBMS 에서의 SQL 뿐만아니라 다른 형태,형식 등으로 데이터를 조직할 수 있는 DB 언어이다. RDBMS 가 주로 XML, 스프레드시트같은 테이블 구조의 정형화 된 데이터를 담는다면, NOSQL 은 바이너리파일(미디어파일, 프로그램 등등)이나 텍스트파일 같은..

<보안 study>/웹 2020.09.30

[Pwnable.xyz] note

note #got_overwrite #BOF 바로 들어가보자. 파일은 일반 ELF 파일이다. 별다른 점은 없다. main 함수를 보면 메뉴번호를 고를 때 read_int32 함수를 통해 번호를 전달받는다. 이는 얼마안가서 취약점을 촉발시키는 매개가 되는데, read_int32 함수를 알아보자. 이 함수를 보자마자 눈여겨봐야겠다고 느낀게 문자열 형태의 숫자 를 atoi로 정수 로 바꿔주고 있었기에 얼마나 큰 수를 입력해도 검증과정없이 정수로 바꿔주는 과정이 조금 이상해보였다. 뭐 결론적으론... 좋은 발견이었지만. 그리고 1번 메뉴를 선택하면 edit_note 함수로 들어오는데 모습은 이렇다. 이 부분에서 read_int32 함수의 좋은 기능을 활용할 수 있는데, 일단 s 는 전역배열로 선언되어있는 32바..

반응형