안드로이드모의해킹8 안드로이드 모의해킹) 취약한 패스워드 변경 시도 패스워드 변경 과정에서 발생 개발자의 실수로 불필요한 로그를 남겨 패스워드를 노출하는 취약점 중요 정보 및 민감정보가 대량으로 노출되는 취약점이 존재 취약점 진단 과정 정상적으로 로그인 후 비밀번호 변경 클릭 P@ssw0rd로 변경 시도, 일단 여기서 비밀번호 평문 노출되는 취약점 발견 비밀번호 변경 성공 확인 서버에서도 비밀번호 평문으로 확인 가능 암호화와 관련한 로직이 없어서 생기는 문제로 중요 정보는 노출되지 않게 처리하는 것이 중요 취약점 대응 방안 암호화가 되지 않은 형태로 저장하는 것은 인증 우회가 가능하므로 주의 필요 높은 수준의 암호화 알고리즘 사용하는 것이 중요하며 쉽게 접근할 수 없는 저장소나 암호화된 상태로 저장해야 함 2020. 12. 3. 안드로이드 모의해킹) 사용자 정보 목록화 이슈 사용자 계정 목록화 : 시스템의 어떠한 인증 체계에 취약점이 존재하여 공격자가 시스템에 존재하는 사용자 계정 목록을획득할 수 있는 취약점 공격자가 무차별 대입 공격 시도 시 로그인을 하지 않더라도 시스템에 존재하는 계정들을 파악할 수 있음 입력한 사용자 계정이 존재하지 않습니다. -> 로그인 에러 메시지 분석 가능 잘못된 암호를 입력했습니다. -> 비밀번호 복구 시 오류 메시지 분석, 회원 가입 시 오류 메시지 분석 가능 사용자 계정 목록화를 통해 유효한 사용자 계정에 대한 정보를 수집한다면 수집된 데이터를 통해 공격 수행 가능 취약점 진단 과정 진단을 하기 위해서는 로그인 관련 메시지를 분석해야 함 첫 번째 시도 : 존재하지 않는 아이디와 비밀번호를 입력한 경우 사용자 계정의 존재 유무를 알려줌 두 번.. 2020. 12. 3. 안드로이드 모의해킹) 인자 전달값 조작 사용자가 안드로이드 애플리케이션을 사용하기 위해 입력할 때 입력되는 파라미터값이 보호되지 않으면 공격자가 사용자의 입력값을 확인하여 정보를 수정해 악용 가능 palameter manipulation은 파라미터 조작 취약점 안드로이드 애플리케이션에서 요청하는 값을 중간에서 가로챈 후 매개변수값을 변조하여 전송 본래의 요청값이 변조된 값으로 수정되고 민감한 정보가 포함된 요청이라면 정보 유출의 위험이 존재 1. 취약점 진단 과정 설정은 지난 포스팅에 적어 놨으니 그거 보고 참고 transfer 페이지에서 값 입력 후 버프스위트 확인하면 평문 전송되는 것 확인 가능 버프스위트에서 결제 금액인 마지막 값을 수정하여 forward 버튼 누르면 변경된 값이 입력될 것임 실제 입금된 돈은 18181818이지만 기록엔.. 2020. 12. 2. 안드로이드 모의해킹) 안전하지 않은 HTTP 통신 HTTP : 인터넷을 이용해 문서를 교환하기 위한 프로토콜, 80번 포트 사용, 안드로이드에서도 애플리케이션과 서버 간 데이터 통신을 할 때 사용, 설계 시 보안을 고려하지 않아 평문으로 전송, 스티핑과 스푸핑 공격을 이용해 패킷 정보에서 탈취 가능 취약점 진단 과정 두 가지 방법 존재 : 프록시 서버에서 확인하는 방법, 네트워프 패킷 정보를 확인하는 방법 프록시 서버에서 확인하는 이유는 서버에 전달하는 과정에서 발생하는 데이터를 조작하거나 정보를 상세히 확인하기 위해서임, 세팅 필요 Setting Network & internet Wi-Fi 해당 와이파이 선택 수정 Proxy 설정 변경 프록시 서버로 사용할 IP 주소(로컬PC IP)와 포트를 입력 버프스위츠 설정 변경 Proxy > Options > .. 2020. 11. 30. 안드로이드 모의해킹) 안전하지 않은 SD카드 저장소 애플리케이션이 SD 카드 저장소에 중요한 정보나 파일을 저장하여 발생하는 취약점 안드로이드는 데이터를 저장할 때 크게 내부 저장소와 외부 저장소로 나눌 수 있음 내부와 외부는 공간별로 접근 가능한 권한과 역할이 다름 내부는 안드로이드 플랫폼, 시스템 등에서 사용된는 공간으로 안드로이드 API에 의해 권한이 통제 외부는 애플리케이션 간 데이터 공유가 가능하고 WRITE_EXTERNAL_STORAGE 권한을 갖고 ldT는 에플리케이션은 설정에 따라 데이터를 읽고 쓰는 것이 가능 디렉터리 중 앱에 대한 정보를 가장 많이 획득할 수 있는 곳은 /data/data/앱이름 dlek. 취약점 진단 과정 안드로이드의 내/외부에 중요한 데이터를 저장할 경우 발생하는 취약점은 외부 저장소에는 어떤 정보이든 서비스에 중요한.. 2020. 11. 26. 안드로이드 모의해킹) 런타임 조작 앱이 실행되는 도중 메모리상에 악의적인 행동을 하는 취약점 취약점 진단 과정 디버깅 포트 찾기 adb jdwp insecurebank 실행 전 insecurebank 실행 후 인시큐어뱅크 어플 실행 후 디버깅 포트 2508이 새로 생긴 걸 확인할 수 있다. 이때 새로 생긴 포트가 인시큐어뱅크 디버깅 포트임 이 포트는 매번 변경되기 때문에 그때그때 확인 필요 adb를 통해 디버깅 포트를 로컬 포트로 포트포워딩해준 후 jdb 명령어를 통해 로컬 디버깅 포트로 연결해줘야함 근데 한번에 될리가 없지 없다 나왔으니 확인 필요 멍청인가 명령어 제대로 안씀 컴포넌트 취약점과 런타임 조작을 통해 로그인하지 않은 상태에서 계정의 패스워드를 변경하기 실습 진행~~ 로그인 하지 않고 패스워드 변경 위해서는 ChangePas.. 2020. 11. 26. 안드로이드 모의해킹) 안드로이드 키보드 캐시 이슈 사용자가 중요 정보를 클립보드에 저장하면 공격자가 이러한 정보를 획득할 수 있는 취약점 키보드 캐시 : 안드로이드의 TextView와 같은 컴포넌트에서 사용자가 중요 정보를 클립보드에 복사할 수 있을 때 임시로 복사한 데이터를 저장하는 곳 이 기능을 악용하면 이전에 중요 정보를 복사하여 인증에 성공한 다른 사용자의 인증 정보를 활용하여 별다른 인증 절차 없이 제삼자도 인증에 성공 가능 취약점 진단 과정 중요 정보 복사 기능이 있는지 확인 후 클리퍼와 같은 클립보드에 접근 가능한 앱ㅇ르 설치한 후 정보 복사 시 중요 정보가 노출죄는지 확인 역시 한번에 될리가 없지 멍텅구리. 어플 다운로드 먼저 받아야한다 이거다 https://www.apk20.com/apk/95059/v/63301 다운로드 완료 첫화면인데.. 2020. 9. 8. 안드로이드 모의해킹) 안전하지 않은 로깅 메커니즘 로그 : 서버에서 운영되는 서비스들이 실행되는 상태나 특정 프로그램을 사용한 사용자의 행위나 흔적을 파일 또는 출력을 통해 남기는 행동 검색 기록 같은 경우는 중요하진 않지만 로그에 중요 정보가 남게 되면 정보가 유출되는 것 안전하지 않은 로깅 메커니즘은 민감 데이터나 노출되면 안 될 정보들을 로그로 남길 경우에 발생하는 취약점(사용자의 ID/PW, 카드 정보 등) 안드로이드 로그 관리법 커널 안 로거라는 커널 드라이브는 main, radio, event, system 네가지 버퍼 관리 사용자 공간에 있는 앱들은 보안 정책에 의해 커널의 버퍼에 접근할 수 없기 떄문에 /dev 에 리눅스 디바이스 노드들을 제공하여 관리 main 메인 앱 로그, 앱이나 플랫폼 내부에서 android.util.Log 클래스로.. 2020. 9. 8. 이전 1 다음