일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Volatility
- ESXi
- Suninatas
- 인시큐어뱅크
- 안드로이드
- NTFS
- 파이썬
- ctf
- otter
- frida
- lord of sql injection
- Strings
- CTF-d
- 2018
- foremost
- XSS
- elasticsearch
- SQL Injection
- diva
- kibana
- Docker
- InsecureBank
- vulnhub
- igoat
- Openstack
- logstash
- beebox
- Reflected XSS
- base64
- MFT
- Today
- Total
Information Security
FridaLab - Change 'check' button's text value to 'Confirm' 본문
FridaLab - Change 'check' button's text value to 'Confirm'
HackingPractice 2020. 12. 16. 18:06FridaLab 앱의 [CHECK] 버튼을 [Confirm]으로 바꾸는 문제인 것 같다.
boolean은 참/거짓으로 return한다. findViewById 메서드를 사용하고 있으며, 값을 가져와서 getText() 메서드를 사용한다. equals() 메서드를 통해 Confirm 문자열과 비교 후, 동일하다면 문제를 해결할 수 있다.
객체 클래스가 Button인 것을 확인할 수 있고 반환 자료형은 button, 최종 값은 String이 되어야 한다.
check 값이 2131165231로 설정되어 있는 것을 확인할 수 있다.
Java.cast(handle, klass)
- Java.use로부터 받은 클래스라는 이름이 담긴 변수가 존재 -> 이 값을 handle에 준다. (checkid)
- button 객체로 만들기 위해 klass 변수를 만든다.
- klass를 handle에 지정
setText() 인자값으로 매치될 수 있는 6개의 오류를 보여준다. int형과 많은 인자 값을 주는 오류를 제외하고 나면 'java.lang.CharSequence'가 나온다. 이 오류를 해결하기 위해 string과 관련된 객체인 'Java.lang.String'을 사용한다.
$new()
- Java.use로 사용한 클래스로 반환된 객체를 인스턴스화 시켜준다.
- 지정한 "Confirm"이 들어가서 전체적으로 동작하여 Java.lang.String에 대한 형태로 변경 후 setText() 메서드에서 이용하게 된다.
새로운 쓰레드에서 UI를 변경할 때 나는 에러다.
check에서 CONIFRM으로 변경된 것을 알 수 있다.
'모바일 > Frida' 카테고리의 다른 글
Uncrackable1 - 암호화 (0) | 2020.12.18 |
---|---|
UnCrackable - Level1 (0) | 2020.12.17 |
FridaLab - Bruteforce check07Pin() then confirm with chall07() (0) | 2020.12.15 |
Fridalab - Run chall06() after 10 seconds with correct value (0) | 2020.05.13 |
FridaLab - Always send "frida" to chall05() (0) | 2020.05.11 |