직접 연구하여 작성한 자료입니다. 공식 출처가 명시되지 않은 자료의 무단 복제, 사용을 금지합니다.공격 기법은 학습용, 허가된 환경에서 실습 바랍니다. 실 운영망 대상 공격은 처벌받습니다. (정보통신망법 제48조 1항)이전 글에 이어지는 글입니다.[안드로이드 모의해킹] 코드 패치와 앱 무결성 검증 (smali 코드 분석) 개요 어셈블리 코드 수정(NDK) 안드로이드 NDK로 개발된 코드 또한 수정이 가능하다. 직접 예제 코드를 작성하고 변조하는 실습을 진행한다. 안드로이드 스튜디오에서 새 프로젝트 생성을 선택하고 Native C++ 프로젝트를 생성한다. 네이티브 언어로 함수를 정의한다. 함수의 기능은 이전의 실습과 유사하게 두 정수의 합을 반환하는 기능을 수행한다. 상용 앱에서는 더 복잡한 기능을 수행하..
직접 연구하여 작성한 자료입니다. 공식 출처가 명시되지 않은 자료의 무단 복제, 사용을 금지합니다.공격 기법은 학습용, 허가된 환경에서 실습 바랍니다. 실 운영망 대상 공격은 처벌받습니다. (정보통신망법 제48조 1항) 개요 안드로이드 단말의 무결성만큼 앱의 무결성도 매우 중요하다. 공격자가 앱 내부 코드를 변조하여 리패키징을 수행하면, 악성코드가 앱 내부에 삽입될 수 있다. 안드로이드 설치 파일은 구글 플레이 스토어뿐만 아니라 제3자 제공 스토어에서도 다운로드 받을 수 있으며, 단말에서 허용하는 경우 apk 파일을 별도로 다운로드 하여 설치할 수 있다. 이 과정에서 위∙변조된 앱이 설치되면 사용자 데이터에 접근하거나 민감정보가 유출될 수 있다. 예를 들어 기존 앱과 동일한 뷰로 로그인 기능을 구현하..
직접 연구하여 작성한 자료입니다. 공식 출처가 명시되지 않은 자료의 무단 복제, 사용을 금지합니다.공격 기법은 학습용, 허가된 환경에서 실습 바랍니다. 실 운영망 대상 공격은 처벌받습니다. (정보통신망법 제48조 1항)학습자료 apk파일은 https://github.com/colfax0483/Vulnerable_apk 에서 clone할 수 있습니다.1. 개요안드로이드 앱 환경은 PC 환경과 다르게 사용자와 앱의 상호작용이 항상 동일한 위치에서 시작하지 않는다. 일반적인 프로그래밍에서 메인(main) 함수부터 실행하는 것과 달리 안드로이드 시스템은 액티비티별 생명주기에 따른 단계별 콜백 함수 통해 앱 코드를 실행한다. 선언된 콜백 함수는 액티비티 클래스에서 관리된다. 예를 들어, 기존에 실행중인 앱 'A'..
1. 개요사용자가 홈 버튼을 누르거나, 앱이 실행중인 상태에서 다른 앱을 실행하여 앱이 백그라운드 모드로 전환되면 안드로이드는 현재 앱 액티비티의 스크린샷을 생성하여 작업 관리자(task manager)에서 확인할 수 있으며, 사용자가 최근 사용한 앱 목록을 볼 때 표시된다. 이 기능은 사용자에게 편리함을 제공하지만, 동시에 보안상의 위험을 초래할 수 있다. 예를 들어, 앱이 민감한 정보를 화면에 표시하고 있는 경우, 스크린샷이 기록되어 작업 관리자에 노출될 수 있다. 이는 민감한 정보의 외부 노출로 이어질 수 있으므로, 민감한 정보가 스크린샷에 포함되지 않도록 해야 한다. 💡 더 알아보기작업 관리자의 명칭은 구글 공식 문서에서도 다양한 이름으로 사용하고 있다.영문으로는 Recents screen, O..
1. 개요 안드로이드 앱 개발 시, 디버그 로그는 앱 동작을 추적하고 개발 단계에서의 버그를 수정하는 데 사용한다. 디버그 로그는 앱의 실행 중에 발생하는 이벤트, 상태, 변수 값 등을 모니터링하고 기록할 수 있는 도구로 앱의 동작과 문제 해결에 도움을 준다. 안드로이드에서는 ‘android:debuggable’ 속성을 AndroidManifest.xml에서 ‘true’로 설정하여 앱을 디버깅 할 수 있도록 허용한다. 기본적으로 이 속성은 비활성화(false)되어 있지만, 앱 개발 중에 실행 중 데이터 확인 등 필요에 따라 설정을 변경할 수 있다. 그러나 이 속성을 ‘true’로 설정하게 되면, 앱 실행 중 세부 정보에 접근할 수 있기 때문에 소스코드를 직접 분석하지 않고도 앱을 디버깅할 수 있다. ..
이전글: [VM] qemu 이용하여 AIX7.2 세팅하기 (1)이전 포스팅에 이은 게시글이다. 서버 설치 및 부팅은 완료했지만 Ctrl+C 입력시 qemu 가 바로 종료되고 인터넷 등과 연결되지 않아 테스트를 할 수 없다. 원격 접속을 위한 OpenSSH를 설정한다. 1. 불필요 서비스 종료일부 기본 서비스는 반드시 필요하지 않으므로 종료한다. 가상환경에서 동작하므로 리소스를 아껴야한다.또한 VM CPU의 사용률이 거의 100%에 달하는 것을 볼 수 있는데 불필요한 서비스를 종료하는 것으로 일부 해결할 수 있다. # rmitab cron# rmitab clcomd# rmitab naudio2# rmitab pfcdaemon# stopsrc -s clcomd# stopsrc -s pfcdaemon 2. ..