'2022/07'에 해당되는 글 3건

https://taesun1114.tistory.com/entry/%EC%95%B1-%EC%8B%A4%ED%96%89-%EC%A4%91-%EB%A1%9C%EB%93%9C%ED%95%98%EB%8A%94-%ED%81%B4%EB%9E%98%EC%8A%A4-%ED%99%95%EC%9D%B8?category=729990 

 

Frida를 이용한 앱 실행 중 로드하는 클래스 확인

앱 실행시 어떤 class가 로드되는지 앱 진단 중 필요해서 뒤적이다가 Java.enumerateLoadedClasses라는 함수를 발견했습니다. 아래 내용은 프리다 공홈에서 가져왔습니다. Java.enumerateLoadedClasses를 이용한..

taesun1114.tistory.com

 

앱 실행시 어떤 class가 로드되는지 앱 진단 중 필요해서 뒤적이다가 

Java.enumerateLoadedClasses라는 함수를 발견했습니다.

 

아래 내용은 프리다 공홈에서 가져왔습니다.

 

 

Java.enumerateLoadedClasses를 이용한 앱 실행 중 로드되는 클래스를 출력하는 함수입니다.

 

Usage : python <하단소스저장파일이름>.py <패키지이름>

 

import sys
import frida

def on_message(message,data):
    print "[%s] -> %s" % (message, data)


PACKAGE_NAME = sys.argv[1]

jscode = """
Java.perform(function(){
    Java.enumerateLoadedClasses(
    {
      onMatch: function(className)
      {
        send(className);
      },
      onComplete:function(){}
    });

});
"""
   
try:
    device = frida.get_usb_device(timeout=10)
    pid = device.spawn([PACKAGE_NAME]) 
    print("App is starting ... pid : {}".format(pid))
    process = device.attach(pid)
    device.resume(pid)
    script = process.create_script(jscode)
    script.on('message',on_message)
    print('[*] Running Frida')
    script.load()
    sys.stdin.read()
except Exception as e:
    print(e)

 

 

 

 

코드 실행 시 화면이며, 안드로이드 내장 클래스까지 출력되어 상당히 지저분합니다.

 

시간 날때 실행 패키지의 클래스만 출력되도록 다듬도록 하겠습니다.

 

 

================================= 18.01.08 추가 ========================================================

 

난독화되어 있는 앱으로 확인한 결과, 실행시 난독화가 풀리는게 아니고 난독화가 진행되면 앱에서 해당 클래스 및 함수의 이름이 바뀌어서 저장되는 것 같습다.

 

실행 시 클래스 로드 할때도 변경된 함수로 로드하네요.

 

솔루션을 이용하는 앱의 경우 솔루션이 .dex의 헤더를 망가트려 디컴파일이 안되게 하는데 이를 믿고 난독화를 안하는 앱이 대다수입니다.

 

이런 앱들은 해당 스크립트로 함수 내부 클래스 네임을 불러올 수 있으므로 난독화는 필수로 해야 할 듯 하네요

 

 

출처: https://taesun1114.tistory.com/entry/앱-실행-중-로드하는-클래스-확인?category=729990 [:티스토리]

'경로 및 정보' 카테고리의 다른 글

Space X bug crowd  (0) 2022.08.25
GooFuzz - The Power of Google Dorks  (0) 2022.08.17
Web Browser 0-day Hunting  (0) 2022.07.05
Elastic 경로  (0) 2022.07.01
Postgresql Injection  (0) 2022.06.17
블로그 이미지

wtdsoul

,

Offensive Security Research Center 그레이해쉬 홈페이지에 오신 것을 환영합니다. (grayhash.com)

 

Offensive Security Research Center 그레이해쉬 홈페이지에 오신 것을 환영합니다.

상세 교육 내용     1일차 - Web Browser Hacking (Basic)         [OT]     •트레이닝 소개     •웹 브라우저 해킹 연구 시작 계기          [기초 설명]     •웹 브라우저 해킹 관련 기본

grayhash.com

 


Web Browser 0-day Hunting
 
강의 요약

    
    본 강의는 이미 오래전부터 현재까지도 심각한 보안 위협이 되어오고 있는 웹 브라우저 해킹에 대해 다루고 있습니다.
    웹 브라우저의 다양한 취약점 유형들과 발생 원리에 대해 알아보고, 특정 취약점을 분석하고 공격하는 것을 직접 실습해
    봄으로써 웹 브라우저 해킹 과정에 대해 구체적으로 이해할 수 있게 됩니다.
    기본적인 이해를 마친 후에는 0-day 헌팅 실습을 통해 추후 웹 브라우저 버그 헌터가 되기 위한 기초를 닦는 것을 목표로 하고 있습니다.
    

기본 정보

    • 강의명 : Web Browser 0-day Hunting
    • 강사 : 현성원 (sweetchip, 그레이해쉬 연구원)
        •Microsoft Internet Explorer 11 CMarkupPointer Use-After-Free Vulnerability (CVE-2014-1799, MS14-035)
        •Microsoft Internet Explorer 11 Ptls6::LsFmtText Out-Of-Bounds Read & RCE Vulnerability (CVE-2015-0037, MS15-009)
        •Microsoft Internet Explorer 9 Uninitialized Memory Reference (CVE-2015-1712, MS15-043)
        •Microsoft Internet Explorer 11 CTitleElement Use-After-Free.(CVE-2015-1714, MS15-043)
        •Microsoft Internet Explorer 11 Memory Corruption (CVE-2015-2447, MS15-079)




주요 교육 내용

    
    •웹 브라우저 해킹 기초 설명
    •과거 주요 공격 사례 소개
    •웹 브라우저 취약점 발생 유형 설명
    •웹 브라우저 해킹 실습
    •웹 브라우저의 작동 원리 이해
    •웹 브라우저 Fuzzer 제작 실습
    •웹 브라우저 보호체계 무력화
    •그 외 웹 브라우저 해킹 관련 이슈들 소개
    

상세 교육 내용


    1일차 - Web Browser Hacking (Basic)
    

    [OT]

    •트레이닝 소개
    •웹 브라우저 해킹 연구 시작 계기
    

    [기초 설명]

    •웹 브라우저 해킹 관련 기본 용어 소개
    •과거 주요 공격 사례 소개
    •웹 브라우저 취약점 발생 유형 설명
        •Buffer OverFlow
        •Out-Of-Bound Access
        •Use-After-Free
        •Type Confusion
        •그 외 (race condition, uninitialized memory, integer overflow)
    •웹 브라우저 취약점 공략 방법 설명
    •공개 웹 브라우저 취약점 찾아보기
        • Exploit DB, Chromium, Project Zero, ETC

    [웹 브라우저 해킹 실습]
    
    •Windows XP + IE8 취약점 공격 실습
        •취약점 발생 원리 설명
        •gflags.exe – full page heap, stack trace의 이해
        •Heap Spray의 이해
        •windbg를 이용한 디버깅 실습
        •쉘 코드 및 공격코드 작성 실습

     •Windows XP + IE8 메모리 보호기법 우회 실습
        •메모리 보호기법(DEP) 우회법 설명 및 실습
        •ROP(Return Oriented Programming) 공격 실습
    

    2일차 - Web Browser Hacking (0-day Hunting)

    [기반 지식 설명]

    •HTML, 자바스크립트 기초
    •웹 브라우저의 구조, DOM의 구조, Element의 이해
    •IE의 객체 생성 및 해제 구조, LFH에 대한 이해

    [Fuzzer 제작 실습]

    •Fuzzing 원리 설명
        •파일 생성형 Fuzzer
        •Javascript 실행형 Fuzzer

    • 공개 웹 브라우저 Fuzzer 작동원리 분석
        •온라인에 공개된 최신 Fuzzer들 소개
        •Grinder 소개
        •Fuzzer 사용 실습

     •Crash 분류하기
        •Crash 분류하기
        •Null-pointer dereferece Crash 이슈
        •다양한 Crash Case 소개
        •Reproduce Issue 설명

    •Fuzzer 제작 팁

    •Fuzzer Server (testcase 생성) 동작 설계
        •기본적인 틀 만들어보기
        •testcase 생성 아이디어

    •Fuzzer Client 동작 설계
        •Gflags - PageHeap, Memory Protection Issue

    

    3일차 - Web Browser Hacking (Advanced)

    [웹 브라우저 보호체계 무력화]

    •IE Memory Protection & Bypass
        •VTGuard 설명
        •VTGuard 우회법 설명
        •Isolated Heap 설명
        •Isolated Heap 우회법 설명
        •Protected Free 설명
        •Isolated Heap / Protected Free 우회 실습

    •다양한 Memory Leak 방법들
        •Memory Leak 취약점 Case Study
        •Memory Leak 취약점을 이용한 Exploit Case Study
        •OOB Read/Write 취약점 Case Study
        •Flash 등 3rd party 취약점 Case Study

    •Sandbox Escape에 대하여
        •Kernel Vulnerability 취약점 Case Study
        •Sandbox Vulnerability 취약점 Case Study


    [Case Study]

    •PWN2OWN에서 사용된 취약점들 분석

    [Bug Bounty 프로그램]

    •Bug Bounty 소개
        •HP ZDI 제보 방법 및 절차
        •MSRC 제보 방법 및 절차
        •그외 버그바운티 프로그램 소개

    

    * 상기 1~3일차 교육 내용은 상황에 따라 일부 변동될 수 있습니다.

교재 및 실습 장비 목록

    [교재]
    • 강의 PPT

    [기타]
    • 수료증(certificate) 발급

교육자 준비사항


    •노트북
    •Software : PowerPoint, Vmware
    •사전지식 : 어셈블리어 기초

'경로 및 정보' 카테고리의 다른 글

GooFuzz - The Power of Google Dorks  (0) 2022.08.17
Frida 로드 클래스 확인  (0) 2022.07.15
Elastic 경로  (0) 2022.07.01
Postgresql Injection  (0) 2022.06.17
파일 시간 변경  (0) 2022.06.11
블로그 이미지

wtdsoul

,

Elastic 경로

경로 및 정보 2022. 7. 1. 13:40

 

Elastic - Bug Bounty Program | HackerOne

 

Elastic - Bug Bounty Program | HackerOne

 

hackerone.com

https://www.elastic.co/sitemap-kr.xml

 

'경로 및 정보' 카테고리의 다른 글

Frida 로드 클래스 확인  (0) 2022.07.15
Web Browser 0-day Hunting  (0) 2022.07.05
Postgresql Injection  (0) 2022.06.17
파일 시간 변경  (0) 2022.06.11
JSP 웹쉘  (0) 2022.06.10
블로그 이미지

wtdsoul

,