JunHo Study
close
프로필 배경
프로필 로고

JunHo Study

  • 분류 전체보기
    • DVWA
    • 앱 진단
      • Frida (안드로이드)
      • 안드로이드 진단
      • 안드로이드
      • ios
      • DVIA
    • XSS game - wargame
    • JAVA
    • Python
    • 리버싱 공부
    • Nebula Exploit -wargame
    • 취약점 공부
  • 홈
  • 태그
  • 방명록
  • 티스토리
  • 관리
Apk - 디컴파일 및 리패키징

Apk - 디컴파일 및 리패키징

1. 디컴파일(Decompile)디컴파일이란 컴파일(사람이 읽을 수 있는 소스코드를 기계어로 변환하는 작업)의 반대 말로 APK 파일을 분해하는 과정을 통해 리소스, 소스코드, Smali 코드가 나오게 된다.  2. 리패키징 리패키징이란 디컴파일을 통해 사람이 읽을 수 있는 소스코드, Smali 코드를 변조 후 앱을 구동할 수 있도록 패키징 하는 것이다.3. apktool 다운로드앞서 설명한 디컴파일과 리패키징을 하기 위해서는 apktool이 필요하다.apktool이란 안드로이드 대상의 리버스 엔지니어링 도구이며 apk파일을 디컴파일 하거나, 코드를 수정하여 패키징 할 수 tool이다.https://apktool.org/ Apktool | ApktoolA tool for reverse engineerin..

  • format_list_bulleted 안드로이드 진단
  • · 2024. 8. 22.
  • textsms
안드로이드 - DEX

안드로이드 - DEX

1. DEX ?"Android"는 JVM(자바가상머신)이 아닌 DVM(달빅가상머신)을 사용하여 .dex파일을 실행한다.- JVM은 컴퓨터의 메모리를 사용하여 스택기반으로 작업코드를 읽어서 사용하고, DVM은 하나의 파일에 모든 소스가 있어서 DEX파일로 부터 작업코드를 읽어 사용한다. 메모리측면으로 봤을 경우 JVM이 뛰어나나 속도측면에서는 DVM이 뛰어남.- Dalvik이란 Android에서 앱을 실행하기 위해 설계된 경량의 가상머신이다. 특징은 각 앱은 독립적으로 실행되어 메모리와 프로세스를 공유한다."DEX"는 구글에서 "Dalvik Executable"의 약자로 모바일 디바이스에서 사용하기 위해 만들어졌으며, "Android"에서 사용되는 "DEX"라는 파일 포맷은 Java로 짜인 코드가 컴파일되..

  • format_list_bulleted 안드로이드 진단
  • · 2024. 8. 20.
  • textsms
fridalab - 문제풀이 - 7번

fridalab - 문제풀이 - 7번

1. 문제확인더보기7번 문제를 보면 브루트포스(무작위대입공격)를 check07 Pin에 사용하여 알맞은 값을 확인하여 chall07로 확인하라는 뜻으로 해석된다.2. 문제풀이더보기코드를 확인해 보니 challenge_07 클래스의 check07 Pin을 확인해야 할 것 같다.setChall07 함수에서는 1000~9999 까지의 랜덤 수를 생성해서 chall07 변수에 값을 넣는 것으로 해석되고check07Pin 은 전달받은 값이 chall07이랑 같은지를 구별하여 boolean형태로 값을 반환하는 것으로 해석된다.var chall_07 = Java.use("uk.rossmarks.fridalab.challenge_07");Java.choose("uk.rossmarks.fridalab.MainActivi..

  • format_list_bulleted Frida (안드로이드)
  • · 2024. 8. 7.
  • textsms
fridalab - 문제풀이 - 6번

fridalab - 문제풀이 - 6번

1. 문제확인더보기6번 문제를 해석해보면 올바른값과 10초뒤에 chall06()을 실행하라는 문제이다.2. 문제풀이더보기chall06 함수를 challenge_06.confirmChall06을 만족해야 completeArr에 값을 넣는다.confirmChall06을 보니 boolean 형태, i는 'chall06값' and '메서드가 시작 후 10 초 후' 두 값이 참이여야 return i 가 참이 되는거 같다. addChall06은 chall06 값에 입력받은 i를 더하고 chall06 값이 9000을 넘으면 그 값을 i로 바꾸는 거 같다.setTimeout(function() { setImmediate(function(){ Java.perform(function(){ var chall_06 = ..

  • format_list_bulleted Frida (안드로이드)
  • · 2024. 8. 6.
  • textsms
fridalab - 문제풀이 - 5번

fridalab - 문제풀이 - 5번

1. 문제확인더보기chall05 함수에 항상 "frida"를 보내라는 문제로 확인된다.2. 문제풀이더보기코드를 봤을 때 chall05 메서드가 String 형태의 문자로 "frida"를 받으면 completeArr 배열에 1을 반환하는 거 같다.그러므로 항상 chall05에 대해서 재정의를 하면 된다.chall05가 onCreate 함수에서 사용되기 때문에 MainActivity가 생성될 때 실행되어 메모리에 잡힌다.setImmediata(function() { Java.perform(function(){ var chall_05 = Java.use("uk.rossmarks.fridalab.MainActivity"); chall_05.chall05.overload("java.lang.S..

  • format_list_bulleted Frida (안드로이드)
  • · 2024. 8. 6.
  • textsms
fridalab - 문제풀이 - 4번

fridalab - 문제풀이 - 4번

1. 문제확인더보기문제 4번은 chall04에 frida를 보내라는 것으로 해석된다.2. 문제풀이더보기chall04 함수를 확인해 본 결과 frida라는 문자를 받았을 시 completeArr이라는 배열에 값을 넣는 방식이다.그러므로 chall04함수에 frida라는 문자를 전송하라는 뜻이다.setImmediate(function(){ Java.perform(function() { Java.choose("uk.rossmarks.fridalab.MainActivity",{ onMatch : function(chall_04){ chall_04.chall04("frida"); }, onComplete : function(){ ..

  • format_list_bulleted Frida (안드로이드)
  • · 2024. 8. 5.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기
    • DVWA
    • 앱 진단
      • Frida (안드로이드)
      • 안드로이드 진단
      • 안드로이드
      • ios
      • DVIA
    • XSS game - wargame
    • JAVA
    • Python
    • 리버싱 공부
    • Nebula Exploit -wargame
    • 취약점 공부
최근 글
인기 글
최근 댓글
태그
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.