Android16 앱 취약점 - < 인자 전달값 조작 > 분석 취약점 개요 사용자가 안드로이드 애플리케이션을 사용하기 위해 상호 간 데이터 통신을 합니다. 이때 사용자의 입력값이 들어가는 부분이 굉장히 많은데, 입력되는 파라미터값이 보호되지 않으면 공격자가 해당 파라미터를 수정해 악용할 경우 해킹 피해가 발생할 수 있습니다. 취약점 분석 인시큐어뱅크 로그인 후 Transfer 버튼을 눌러 계좌송금을 하는 부분입니다. 해당 송금을 클릭하면 왼쪽 그림과 같이 프록시에 다양한 개인정보가 평문으로 잡혀있습니다. 공격자는 이를 이용해 사용자는 555원을 송금하려고 클릭했지만, 중간에 패킷을 가로채 amount 파라미터를 100000으로 조작했습니다. Foward 를 누르면, 해당 Tranfer 기능이 실행되면서 amount 가 100000으로 실행된 것을 볼 수 있습니다. .. 2021. 8. 19. 앱 취약점 - < 안전하지 않은 HTTP 통신 > 분석 취약점 개요 HTTP 프로토콜은 설계를 할 때 보안을 고려하지 않고 설계하기 때문에 데이터 통신을 하는 과정에서 정보 전송 시 평문이 노출됩니다. 공격자는 스니핑/스푸핑 공격을 이용하여 사용자들의 입력값을 탈취할 수 있습니다. 중요 정보는 SSL/TLS 통신을 적용하여 암호화된 데이터로 안전하게 보내야 합니다. 취약한 HTTP를 이용한 데이터 전송은 OWASP Mobile TOP 10의 M3: Insufficient Transport Layer Protection 에 해당하는 취약점으로, 안드로이드 애플리케이션 간 통신 시 중요 정보를 평문으로 전송할 때 발생합니다. 취약점 분석 해당 취약점은 Burp Suite Tool을 사용하여 패킷을 프록시로 잡아 분석해보겠습니다. 프록시서버에 연결 후 인시큐어뱅크.. 2021. 8. 19. 안드로이드 취약점 - < 메모리 내 민감한 정보 저장 > 분석 취약점 소개 애플리케이션이 실행되면 일정량의 메모리를 차지하고 실행 중에 필요한 정보들이 저장됩니다. 안드로이드에서 프로세스가 생성되면 달빅 가상 머신을 사용해 해당 프로세스가 동작에 필요한 만큼 메모리를 할당하고, 더 사용해야 한다면 프로세스당 허용된 메모리 한계 안에서 필요한 만큼의 메모리를 할당합니다. 인시큐어뱅크 앱을 통해 메모리 영역에서 어떤 방법으로 데이터를 추출하고, 어떤 데이터들이 노출되는지 확인해보겠습니다. 취약점 분석 명령어 : -> 위 명령어로 쉘에 접속해 현재 실행중인(메모리에 올라와있는) 인시큐어뱅크의 프로세스 ID를 알아냅니다.(3938) 명령어 : < adb shell am dumpheap 3938 /sdcard/Dow.. 2021. 8. 17. 앱 취약점 - < 루팅 탐지 및 우회 > 분석 취약점 개요 리눅스 커널 2.6을 기반으로 제작된 안드로이드는 리눅스에서 발생하는 취약점들을 내포하고 있습니다. 루트 노출 및 우회 취약점은 안드로이드 디바이스 시스템 권한을 얻는 것을 말합니다. 안드로이드의 경우 보안상의 이유로 루트 권한을 막아놓았습니다. 그리고 금융권 애플리케이션에서는 이렇게 루팅된 기기에서의 앱 실행을 차단하는 경우가 대다수입니다. 이번 글에서는 애플리케이션에서 어떤 방식으로 루팅을 탐지하는지 알아보고, 우회방법까지 공부해보겠습니다. 취약점 분석 루팅 체크가 필수적인 금융 앱이나 게임 앱에서는 다음과 같은 네 가지 경로를 주로 체크합니다. /system/bin/su /system/xbin/su/ /system/app/superuser.apk /data/data/com.noshufo.. 2021. 8. 16. 이전 1 2 3 4 다음