티머니 Third-Party 어플리케이션 취약점

2016-12-04 13:39에 쓰기 시작했는데 이제서야 완성한다.

Intro

작년 겨울에 학교에서 K-sheild 멘토링을 했었다. 처음 받아보는 멘토링이라 설렜다. 같은 학년에서 보안 공부를 하는 친구들이 딱히 많지 않아, 맘 맞는 친구들과 신청하였다. 신청했던 주제는 IOT 사물인터넷 보안이었는데 타겟을 찾다찾다 한 친구놈이 교통카드 해킹하자 한게 실제로 하게 되었다. 우리가 생각했던것은 offensive-security에 대한 멘토링이었는데 멘토분들은 방화벽 만들고 유지보수 하는 기업다니시는 분들이라 조금 아쉽기도 했다. 보안의 다른면에 대한 이야기도 들을 수 있어서 좋았던것 같다.

어떻게 해킹을 할까 생각하다, 검색엔진에 검색해보니 뉴스 링크가 나왔다. 우리도 똑같이 어플리케이션을 타겟으로 잡았다. 분명 다른 로직버그들이 존재할게 분명했기 떄문이다. 그렇게 티머니앱을 분석하려하는데 난독화가 심하게 걸려있었다. 결국 찾은게 티머니 API를 사용한 Third-Party 어플리케이션이었다.

kisa 제보 취약점은 4개월 지나면 공개해도 되길래 다른 누군가가 새로운 취약점을 찾길 바라면서 공개해본다.

Target

특정앱을 거론할 수 는 없지만 캐시비, 티머니등 교통카드를 충전해주는 어플리케이션이었다. 지금은 라이브러리파일들이 seworks의 앱솔리드로 난독화 되어있다. 아마 패치하면서 같이 적용한것 같았다. 예전에 썻던 보고서와 자료들이 남아있길래 그걸 토대로 작성하겠다.

뭐이렇게 생기긴 했다. logo

Summary

한장으로 요약하면 다음과 같다.

summary

지금 와서 생각한건데 보고서 참 못썻다.. 저땐 저게 최선이라고 생각했었는데 ㅋㅋ 앞으론 잘써야겠다는 생각이 들었다.

Vuln

취약점은 되게 간단한데, 그걸 찾고 실제로 exploit하는것 까지 좀 힘들었다. 그걸 이야기기해보고자 한다.

예전에는 교통카드 충전을 특정한 기기에서밖에 할 수 없었다. 하지만 기기의 역활을 하던것이 스마트폰으로 넘어오게 된것이다. 이로써 이것을 리버스 엔지니어링 하게될경우 성공적으로 해킹할 수 있다는 생각이 들었다.

– deleted –

로직이 저기 위에 사진과 같았는데 validation을 클라이언트쪽에서 진행했기때문에 발생하는 취약점이었다.

응답을 보내는것 자체가 너무 한정적이기 때문에 스마트폰을 에뮬레이션할 수 있게 될경우 다른 취약점이 발생할 수 있을거 같다.

그때 스크린샷은 다 사라졌지만 보고서만이 남아있기에 보고서를 첨부한다.

 


 


업데이트

2018-06-03 보안상의 이유로 보고서는 삭제되었습니다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.