보안 이야기(19)
-
SSL Pinning 우회 iOS
최근까지 하고있는 모의해킹 프로젝트에서 가장 막강한(?) 대응책으로 불리웠던 SSL Pinning 우회방법에 대해 알아보자. 적나라하게.. 웹에서 검색을 했을 때는 사실 뭐라고하는지 잘 모르겠어서 시도하기가 어려웠다. 요는 frida hooking을 이용하는 것이다. 사실 엄청나게 헤멨다. 굉장히 뎊스있는 모의해킹을 원하는 고객 덕에 많이 배우고 있는 요즘이다. 처음 시도했던 것은 바로 IDA를 이용한 바이너리 분석이다. SSLpinning을 검색한 후 관련 클래스를 모두 분석을 했었다(결과는 당연 아무것도 모르겠다) 두번째, 루팅 체크 우회를 할 떄 처럼 FLEX를 이용해서 몇개의 관련 클래스의 리턴값을 마구 바꿔봤었다. 이를테면 위 처럼 검색을 한 후에 리턴값을 고정을 하는것인데.. 내가 IDA로 바..
2019.07.21 -
Android SSL pinning, USIM check 우회
프젝중에 함께 일하는 분이 팁을 주셔서 Android pinning 우회와 USIM check 기법을 조사중에 있다.. 일단은 smali 코드로 보고 있는데 이것은 팁을 주신분은 smali가 더 편해서 잘보인다고 말씀하셔서 .. 찾아보는데 2일정도 짬짬히 찾고 있는데 오늘 발견한 것 같아서 조금적어보려고 한다.. 스말리 코드로 분석한 내용이다. 대충 읽는 방법을 알고싶다면은(요기 참조 http://strongslaves.tistory.com/29) bool 형으로 pinning이 됬는지 값을 가져와서 if 문으로 분기를 한다. 저거는 어셈블러랑 비슷한 조건식이다. 뭐 이퀄 제로ㅡ 낫이퀄제로 이런것들? 문기해서 정상이면 어디어디로 가라 이런건데 아직 분석을 마무리 짓지 못해서 .. 이번에 프리다 툴로 스크..
2019.07.21 -
frida Android hooking(모바일 해킹)
오늘은 hooking의 강력함과 왜 hooking을 해야하는지를 포스팅해보려한다.. 많은 CTF나 ANDROID 진단 프로젝트에서 굳이 hooking을 하지 않더라도 Rooting 체크나 어떤 솔루션에 대해 제약을 받지 않을 수도 있다. 왜? 프로젝트 시에는 대게 솔루션이 입혀지지 않은 경우도 많고.. 프로젝트 기간 상의 문제로 솔루션을 제외시켜달라고 하는 경우도 있기 때문이다. 안드로이드의 솔루션은 무엇이 있는가? 무결성 검증, 루팅 체크, SSL pinning 난독화 등 일단 루팅 체크를 예를 들어서 본 포스팅을 하도록 해보겠다. 루팅우회? 그거 그냥 smali에 들어가서 루팅 체크하는 string 아무 string으로 예 ) /su -> /sa 이딴식으로 바꾸면 되는거 아니에요? 이럴수도 있다. 그..
2019.07.21 -
전문가들이 사용하는 17가지 침투 테스트 툴
침투 테스트는 전문 해커가 공격자보다 먼저 시스템 취약점을 찾기 위해 사용하는 방법이다. 침투 테스트를 위해서는 치밀한 사고와 인내심이 필요하며 약간의 운도 필요하다. 또한 대부분의 전문 해커에게는 테스트를 위한 몇 가지 특정 툴도 필요하다. Credit: Getty Images Bank 최근 본지는 몇몇 보안 전문가(일부는 레드 팀 운영자이자 개발자)에게 즐겨 사용하는 툴에 대해 물었다. 다음에서 설명하는 툴은 간단한 평가, 복잡한 교전 상황에서 도움이 됐거나 어떤 식으로든 현장에서 항상 전문가들에게 도움이 된 툴이다. 무료도 있고 라이선스 비용이 필요한 경우도 있지만 모두 한번쯤 살펴볼 가치는 있다. 1. N맵(Nmap) N맵은 2017년 9월 1일자로 20주년을 맞았다. 처음 나온 당시부터 네트워크..
2019.07.21 -
CryptoJS AES en/decryptor
웹 취약점 진단 중에 AES 키가 노출되는 취약점이 있었기 때문에 암/복호화를 할 수 있는 소스를 짜봤다. 먼저 cryptoJS 를 사용하고 있어서 해당 소스를 이용해서 작성을하였고 다른 오픈소스에도 적용이 가능한지는 모르겠다. 안되면 다시 짜면되니깐 .. UI는 깃허브에 테스트 용으로 올라와 있는 페이지를 이용했고 조금만 수정을 했다. 사인펜으로 찍찍 그어져 있는 부분이 키를 입력하는 부분이고 버튼을 누르면 그 위에 텍스트가 출력된다. innerHTML을 이용해서 바로바로 변경된다. 수정이 필요한 부분이 있다면 댓글을 달아주시면 수정해보겠습니다. 다운로드는 : https://github.com/bourbonkk/CryptoJS_AES_en-decryptor bourbonkk/CryptoJS_AES_en..
2019.07.21 -
Insecure Client-Initiated Renegotiation 취약점 및 조치방안
지인을 통해 금보원에 새로운 취약점 몇 개가 추가되었다고 들었는데 처음듣는 부분이 있어서 포스팅한다. 취약점 이름은 Insecure Client-Initiated Renegotiation 이 설정이 미흡하게 되어 있다면 DoS 형태의 공격에 노출될 수 있는 취약점이다. 암호화 통신을 할때, 재협상 제한이 미흡해서 일어나는 취약점. 처음에는 파이썬으로 코딩해서 Burp에 API로 붙이려고 했으나,, 도저히 못짜겠어서 일단 원리파악차 공부했다. 일단 확인 방법은 쉽다 openssl을 통해서 점검하고자 하는 사이트에 붙은 후 명령어를 통해 재협상을 하면 된다. 그에 따른 리턴값이 어떻게 나오냐에 따라 취약 유무를 따질 수 있다. 일단 재협상은 네 가지 종류가 있다. Client-initiated secure ..
2019.07.21