frida source share

모바일 2020. 7. 14. 18:19

https://codeshare.frida.re/browse

 

Frida CodeShare

27 | 68K Android SSL Re-Pinning, more information can be found here https://techblog.mediaservice.net/2017/07/universal-android-ssl-pinning-bypass-with-frida/ 9 | 19K Android antiroot checks bypass 7 | 6K Show useful info about AES encryption/decryption at

codeshare.frida.re

 

 

 

 

'모바일' 카테고리의 다른 글

IDA Remote debugging 안드로이드  (0) 2020.07.15
Android 안티디버깅 관련 대응방안  (0) 2020.07.15
iOS frida 환경 셋팅  (0) 2020.07.14
frida iOS 환경 셋팅 (Clutch, class-dump-ios, etc)  (0) 2020.07.14
frida ios dump ipa 추출  (0) 2020.07.14
블로그 이미지

wtdsoul

,

iOS frida 환경 셋팅

모바일 2020. 7. 14. 17:50

 

윈도우 10

환경 : iPhone 5S

버전 : 10.3.X

 

아래 블로그 참고

https://goroad.tistory.com/298

 

[Frida] Android Memory Dump (1. 환경세팅)

이 글은 Android Memory Dump에 대한 시선으로만 작성되었으며, 다른 기능들의 언급은 없음. 1. frida, fridump 초기 세팅 2. Device not found 라는 에러가 발생 위 두가지에 해당 하는 사람에게 도움이 될수 있.

goroad.tistory.com

frida 공식 github

https://github.com/frida/frida/releases

 

Releases · frida/frida

Clone this repo to build Frida. Contribute to frida/frida development by creating an account on GitHub.

github.com

 

파이썬 : 3.7.0(64bit)

frida-server-12.7.22-ios-arm64

 

\Python37\Scripts 경로에서

python2

pip install frida==12.7.22

pip install frida-tools==4.1.0

 

python3

pip3 install frida==12.7.22

pip3 install frida-tools==4.1.0

 

삭제가 필요한 경우

ex) pip3 uninstall frida==(version) 입력

 

 

 

블로그 이미지

wtdsoul

,

CVE-2020-0796-RCE-POC

CVE 2020. 7. 14. 17:43

CVE-2020-0796-RCE-POC-master.zip
2.39MB

https://packetstormsecurity.com/files/download/158054/CVE-2020-0796-RCE-POC-master.zip

 

Download: SMBleed / SMBGhost Pre-Authentication Remote Code Execution Proof Of Concept ≈ Packet Storm

© 2020 Packet Storm. All rights reserved.

packetstormsecurity.com

 

SMBleed / SMBGhost Pre-Authentication Remote Code Execution Proof Of Concept

 

Download: SMBleed / SMBGhost Pre-Authentication Remote Code Execution Proof Of Concept ≈ Packet Storm

© 2020 Packet Storm. All rights reserved.

packetstormsecurity.com

나중에 참고

 

'CVE' 카테고리의 다른 글

Word press plugin 0day  (0) 2020.09.06
POODLE Attack  (0) 2020.08.09
CVE-2019-8805 - A macOS Catalina privilege escalation  (0) 2019.12.10
CVE-2019-2890  (0) 2019.12.10
WhatsApp exploit poc  (0) 2019.11.21
블로그 이미지

wtdsoul

,

 

iOS 탈옥 기기에서 frida 후킹 및 분석 관련해서 환경 설정 중

 

Clutch 2.0.4는 다행히 사용 가능

 

 

https://github.com/KJCracks/Clutch/releases

 

Releases · KJCracks/Clutch

Fast iOS executable dumper. Contribute to KJCracks/Clutch development by creating an account on GitHub.

github.com

chmod 777 변경

/usr/bin 경로로 이동

 

앱의 복호화가 성공하면

binary 파일은 /tmp/clutch/### 에 위치,

ipa 파일은 /private/var/mobile/Documents/Dumped/###.ipa 에 위치하게 된다.

 

 

 

 

class-dump-z에서 

이전에 사용하던 버전이 안되어서 다시 찾아보니 아래 경로 건 제대로 돌아가는듯

 

다른 블로그 참조

deb 파일 받아서

dpkg -i deb 파일로 설치 후 /usr/bin 폴더에 넣고 chmod 777 변경

 

https://github.com/DreamDevLost/classdumpios/releases

 

Releases · DreamDevLost/classdumpios

iOS port from nygard/class-dump. Contribute to DreamDevLost/classdumpios development by creating an account on GitHub.

github.com

 

'모바일' 카테고리의 다른 글

frida source share  (0) 2020.07.14
iOS frida 환경 셋팅  (0) 2020.07.14
frida ios dump ipa 추출  (0) 2020.07.14
라인 - 난독화 컴퍼일러 도구(블로그)  (0) 2020.04.01
윈도우10 내부망 모바일 진단 설정  (0) 2020.01.31
블로그 이미지

wtdsoul

,

참고

 

현재 iOS  10.3.X 대 사용 중

 

윈도우 7, 10 환경

 

그 외 frida-ios-dump

 

https://hackcatml.tistory.com/15

 

bagbak을 이용한 IPA파일 추출

iOS 12 이상에서는 Clutch를 이용한 ipa파일 추출이 안되어서 다른 방법이 필요합니다. bagbak이라는 좋은 툴이 있어 소개합니다. 준비물은 탈옥폰 및 칼리입니다. 저는 uncover탈옥툴을 이용하여 아이��

hackcatml.tistory.com

 

https://nightohl.tistory.com/206

 

기기에서 .ipa 파일 추출하는 방법 4가지

기기에서 .ipa 파일 추출하기 아이폰 앱 파일은 .ipa 인데 사실 .zip 형식임 따라서 1. /var/containers/Bundle/Application/ 경로에서 2. ls * 로 원하는 앱 찾고 3. 목표 앱 압축해서 확장자만 .ipa 로 바꿔..

nightohl.tistory.com

https://mingzz1.github.io/pentesting/ios/2020/01/02/iOS-app_decrypt.html

 

[iOS] 어플리케이션 Decrypt 및 분석 | mingzzi

iOS 어플리케이션은 안드로이드 어플리케이션과 달리 어플리케이션을 Decrypt해야 분석을 할 수 있다. 어플리케이션을 Decrypt 하는 방법은 다음과 같다. 먼저 내가 사용 한 환경은 다음과 같다. Crack

mingzz1.github.io

 

블로그 이미지

wtdsoul

,

 


 

 

환경 : 윈도우10

 

https://www.hahwul.com/2017/08/powershell-execution-of-scripts-is.html

 

[POWERSHELL] 이 시스템에서 스크립트를 실행할 수 없으므로 파일을 로드할 수 없습니다(execution of sc

[POWERSHELL] 이 시스템에서 스크립트를 실행할 수 없으므로 파일을 로드할 수 없습니다(execution of scripts is disabled on this system.) 에러 해결 방법 #powershell

www.hahwul.com

 

해당 경로에서 참고하였습니다. 

 


한글

"이 시스템에서 스크립트를 실행할 수 없으므로 파일을 로드할 수 없습니다"


영문

"execution of scripts is disabled on this system."


이런 에러는Windows에서 정책적으로 Powershell 실행에 제한이 있어서 불가능합니다. 관리자 권한이 있는 powershell로 ExecutionPolicy를 RemoteSigned로 변경해주는 것으로 해결이 가능합니다.

PS C:\> Set-ExecutionPolicy RemoteSigned

잘 바뀌었네요. 바뀐 권한을 보면 RemoteSigned로 변경되어있습니다.

PS C:\> Get-ExecutionPolicy
RemoteSigned

'' 카테고리의 다른 글

MySQL SQL 인젝션 대응 PDO  (0) 2020.08.08
burp js(javascript) response 셋팅  (0) 2020.07.20
Insecure Client-Initiated Renegotiation 취약점  (0) 2020.06.23
Dom Clobbering (with XSS)  (0) 2020.01.06
Bug Bounty: Broken API Authorization  (0) 2019.12.04
블로그 이미지

wtdsoul

,

https://shayete.tistory.com/entry/Poodle-padding-oracle-on-downgraded-legacy-encryption

 

Poodle [padding oracle on downgraded legacy encryption]

이걸 전주에서 발표한 지 2달쯤 지난 것 같은데 그 후로 너무 바빠서 지금 포스팅을 하게 되네요.  10월에 잠깐 이슈가 되었던 푸들어택은 POODLE(Padding Oracle On Downgraded Legacy Encryption)의 약자로  ..

shayete.tistory.com

OpenSSL 관련 Poodle 공격 관련해서 공부를 다시 하는 중 입니다.

 

https://vulmon.tistory.com/4

 

CBC(Cipher Block Chaining) Padding oracle Attack

1. 개요 - Oracle? DB가 아닌 "응답에 대한 판독"의 의미 - Padding? (PKCS5 - 8 bytes/block , PKCS7 - 16bytes/block)  평문 데이터를 블록 암호화 하기 위해 고정된 크기의 블록으로 처리를 함에 있어 평문..

vulmon.tistory.com

 

 Downgrade dance 과정은 일단, 클라이언트가 서버에게 client hello에 최신 프로토콜인 TLS 1.2를 보내는 데 중간에 해커가 그 정보를 가로채서 패킷을 드랍시키고 서버에게 현재 연결을 종료시키는 패킷을 보냅니다. 클라이언트 쪽에서는 TLS 1.2가 서버에서 지원이 안되나보다 하고 한단계 낮은 TLS 1.1을 날립니다. 이것도 해커가 가로채서 패킷을 드랍시킵니다. 이렇게 한 단계씩 내리다보면 SSLv3까지 내려오게 되는데 그제서야 해커는 서버에게 이 패킷을 날려서 SSLv3을 사용하도록 유도합니다.

 

 

 

 

* 이 방법 외에도 다운그레이드 하는 방법은 몇 가지 더 되고, 제가 적은 건 다운그레이드 방법의 한 예입니다.

 

 

 

 SSLv3으로 내려가면 패딩오라클 어택을 시도할 수 있습니다. 위 그림은 CBC mode encryption을 나타냈는데 평문 한 블록을 임의의 초기벡터와 xor 연산을 해서 나온 임의의 값을 특정 키값과 블럭암호화를 합니다. 생성된 암호문 1을 다음 평문과 xor하여 또 다른 암호를 2를 만들고.. 이렇게 블록암호화 하면서 암호문을 생성하는 게 cbc encryption인데, 블럭암호화를 하면 패딩값이 무조건 1바이트 이상 나오게 됩니다.

 

 

 예를 들어 표현한 건데 블럭암호화를 하지 않았을 경우와 암호화를 했을 때를 나타내는 표입니다. 1번은 Shayete라는 7바이트 값이 블럭에 들어가 있습니다. 근데 블럭암호를 했을 때 블럭의 마지막 1바이트에 패딩값이 채워지게 됩니다. 마찬가지로 4바이트 값이 들어가 있다면 패딩값 4바이트가 채워지게 되고 블럭에 8바이트 꽉꽉 채워져있으면 그 다음 블럭에 8바이트의 패딩값이 들어갑니다. 8바이트 이상의 값이 있어도 그 다음 블럭에서 똑같이 패딩값이 생성되고요. 이 패딩으로 어떻게 값을 알아낼 수 있냐고요?

 

 

 

 cbc decryption마저 보고 설명드리겠습니다. 복호화는 암호화와 반대로 진행됩니다. 암호문을 특정 키값과 블럭암호화해서 생성된 임의의 값과 임의의 초기벡터를 xor연산해서 평문으로 복호화합니다. 처음의 암호문1로 다음 임의의 값과 xor연산해서 다음 평문을 복호화시키고요. 이 과정이 cbc decryption입니다. 지금까지 encryption, decryption을 설명드렸는데 이걸로 뭘 할 수 있을까요. 패딩값을 이용하는 것과 cbc mode의 구조의 결함을 가지고 공격을 하게 됩니다. 평문을 얻어내려면 초기벡터값과 임의의 값 intermediary값이 필요한데, 

 

 

 

 공격자는 중간에 빼온 값들을 xor 연산해서 intermediary 값을 얻게 되는데 이 과정에서 암호문이 옳다면 서버는 200ok 표시되고 패딩값은 맞는데 잘못된 값을 받았을 경우 200ok custom error를, 그리고 패딩값이 잘못된 값을 받았을 땐 500 에러가 뜹니다. 초기벡터값을 브루트포싱으로 진행하다보면 올바른 intermediary 값을 얻게 되는데 이걸 이용해서 평문을 복호화시킵니다. 위 그림을 보면 예를 들어 패딩값이 1개 있을 때 브루트포싱으로 쭉 돌리다가 초기벡터가 0x36일 때 서버에서 200ok를 보내 패딩값을 알아낸 것을 볼 수 있고 2번째는 패딩값이 4개일 때, 마지막은 패딩값이 8개일 때 올바른 intermediary값을 찾은 걸 볼 수 있습니다.

 

 

 

 패딩오라클의 전체적인 모습을 그림으로 표현해봤습니다. A의 값과 B를 xor하면 intermediary C가 나오게 되는데 이것이 Original 값의 D와 일치하다고 판단하여 평문인 E를 얻게 됩니다. 이런식으로 브루트포스를 진행해서 완벽한 평문을 얻어내는 게 패딩오라클 어택입니다. 

 

 

푸들어택에 대한 대처방안은,

 

 크롬에서는  --ssl-version-min=tls1 을 이용해서 버전이 내려가는 걸 막는 방법이 있습니다. IE에서는 인터넷 옵션에서 ssl3.0으로 내리는 것을 막을 수 있고요. 공용 와이파이를 쓰지 않는 것과 TLS_FALLBACK_SCSV 옵션을 사용하는 방법이 있습니다. 그리고 마소에서 푸들을 막기 위해 임시용 프로그램을 만들어 둔 것 같은데 그것도 방법 중의 하나입니다.

 

--ssl-version-min=tls1 이건 인터넷 검색해보면 여러 군데에서 설명을 해뒀으니 따로 적지 않겠습니다.

 

TLS_FALLBACK_SCSV는 

 

 

만약 프로토콜이 내려가는 것을 감지하면 inappropriate_fallback 경고 메세지를 보내서 다운그레이드를 방지할 수 있는 방법입니다.




'암호학 & 알고리즘' 카테고리의 다른 글

HMAC란?  (0) 2021.07.27
백준 분해합 C  (0) 2021.01.02
Oracle Padding Attack  (0) 2019.11.27
블로그 이미지

wtdsoul

,

https://bourbonkk.tistory.com/4

 

Insecure Client-Initiated Renegotiation 취약점 및 조치방안

지인을 통해 금보원에 새로운 취약점 몇 개가 추가되었다고 들었는데 처음듣는 부분이 있어서 포스팅한다. 취약점 이름은 Insecure Client-Initiated Renegotiation 이 설정이 미흡하게 되어 있다면 DoS 형��

bourbonkk.tistory.com

 

자세한 내용은 해당 블로글를 보면 될 것 같습니다.

 

환경 셋팅)

zero-gravity.tistory.com/239

 

Window 환경에서 OpenSSL 설치 및 사용하기

 OpenSSL을 윈도우에서 사용하는 방법을 한국 사이트에서 찾다가 너무 복잡하거나 안되는 방법으로 써놔서 조금 고생했다.  내가 참고한 사이트는 다음과 같다. https://www.tbs-certificates.co.uk/FAQ/en/o

zero-gravity.tistory.com

github.com/nabla-c0d3/sslyze/blob/master/README.md

 

nabla-c0d3/sslyze

Fast and powerful SSL/TLS scanning library. Contribute to nabla-c0d3/sslyze development by creating an account on GitHub.

github.com

 

m.blog.naver.com/jihye2340/220659855526

 

[OpenSSL] s_client

# s_client ?? -> SSL/TLS client Program -> openssl 명령으로 운영중인 웹서버의 SSL인...

blog.naver.com

 

slproweb.com/products/Win32OpenSSL.html

 

Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

Minimum system requirements: Windows XP or later 32MB RAM 200MHz CPU 30MB hard drive space Recommended system requirements: Windows XP or later 128MB RAM 500MHz CPU 50MB hard drive space April 21, 2020 - All users and applications should be using the OpenS

slproweb.com

 

현업에서 갑자기 쓸일이 발생하여 해당 경로를 참고해 취약한 HTTPS 재협상 취약점을 확인하였습니다.

블로그 이미지

wtdsoul

,

https://engineering.linecorp.com/ko/blog/code-obfuscation-compiler-tool-ork-1/

 

오크(ORK) - 난독화 컴파일러 도구 1편 - LINE ENGINEERING

안녕하세요. LINE에서 클라이언트 보호 솔루션인 AIR ARMOR 개발을 담당하고 있는 정상민입니다. 이전 글, 'iOS 코드 서명에 대해서'에서는 심민영 님이 iOS 앱의 무결성과 서명자를 검증할 수 있는 iOS 코드 서명에 대해서 설명했는데요. 이번 글에서는 앱의 위변조 및 도용 방지를 위해서 자체 개발 중인 난독화 도구를 소개하려고 합니다. 예제 소스 코드를 이용해 컴파일러 동작의 각 단계를 확인하면서 난독화가 어떻게 수행되는지 살펴보겠습니다.

engineering.linecorp.com

 

 

블로그 이미지

wtdsoul

,

 

http://bleepingcomputer.com/news/security/microsoft-leaks-info-on-wormable-windows-smbv3-cve-2020-0796-flaw/

 

Microsoft Leaks Info on Wormable Windows SMBv3 CVE-2020-0796 Flaw

Microsoft leaked info on a security update for a 'wormable' pre-auth remote code execution vulnerability found in the Server Message Block 3.0 (SMBv3) network communication protocol that reportedly should have been disclosed as part of this month's Patch T

www.bleepingcomputer.com

Desktop and server Windows 10 versions impacted

Devices running Windows 10 Version 1903, Windows Server Version 1903 (Server Core installation), Windows 10 Version 1909, and Windows Server Version 1909 (Server Core installation) are impacted by this vulnerability according to a Fortinet advisory, although more versions should be affected given that SMBv3 was introduced in Windows 8 and Windows Server 2012.

"An attacker could exploit this bug by sending a specially crafted packet to the target SMBv3 server, which the victim needs to be connected to," Cisco Talos explained in their Microsoft Patch Tuesday report — this was later removed by the Talos security experts.

"The exploitation of this vulnerability opens systems up to a 'wormable' attack, which means it would be easy to move from victim to victim," they also added.

Fortinet says that upon successful exploitation, CVE-2020-0796 could allow remote attackers to take full control of vulnerable systems.

Due to Microsoft's secrecy, people are coming up with their own theories regarding the malware and its severity, some comparing it to EternalBlue, NotPetya, WannaCry, or MS17-010 (1, 2).

Others have already started coming up with names for the vulnerability such as SMBGhost, DeepBlue 3: Redmond Drift, Bluesday, CoronaBlue, and NexternalBlue.

 

ing

블로그 이미지

wtdsoul

,