2010년 12월 10일 금요일

어느날 금융사 홈페이지에 방문했더니 뜨는 MySQL 메시지 하나...

얼마전, 한 금융사 홈페이지에 접속을 위하여 방문하였다.
인터넷 뱅킹 사용시 보안 프로그램을 설치할 것을 요구하는데, 키보드 보안 프로그램은 제외하고
로그인을 시도하였더니, 아래와 같은 메시지가 찍히는 것이 아닌가?

mysql_query : Error [1064], ['syntax error' 에러 같읍니다. ('and user_yn='Y' order by seq_no desc' 명령어 라인 1)]

개발 관련 일을 하고 있는 사람이라면 쉽게 MySQL 을 사용하고 있구나 하고 추측해 볼 수 있다.
금융권에서 MySQL 을 사용한다고 하니, 역시나 오픈소스 MySQL 이구나 하는 생각도 든다. 개인적인
생각이지만, 흔히 Mission Critical 한 중요 데이터는 오라클과 같은 상용 데이터베이스를 써야 한다는
의견이 많지만, 왜 MySQL 및 기타 오픈소스들은 안될까? 구글만 보더라도 MySQL 을 튜닝해서 꽤 많은
데이터를 처리하고 있는 것으로 알려져 있는데 말이다.

잠깐, 엉뚱한 얘기로 빠졌는데 위와 같은 메시지를 보고서 제대로 Exception 처리를 안 했다는 생각이
들어서 적어보는 것이다. 사실 이와 같은 에러메시지가 보안적으로 문제가 될 수 있기 때문이다.
제일 간단하게는 여기서 MySQL 을 사용한다는 정보를 알아낸 것이고, 이것을 토대로 범위를 넓혀
갈 수 있다.

가끔 이와 같이 일반 사용자들에게 노출해서는 안되는 형태의 메시지들이 보이는 경우가 있는데,
개발자들은 테스트 시에도 다양한 상황을 고려하여 테스트를 해보아야 한다. 이런 메시지 하나가
시스템을 위협할 수 있는 불씨가 될 수 있다는 사실을 말이다...


댓글 1개:

  1. trackback from: 어느날 금융사 홈페이지에 방문했더니 뜨는 MySQL 메시지 하나...
    금융사 홈페이지에 MySQL이 사용되었다는 얘기를 듣고 놀랍다는 생각이 드는 것은, 아직 국내에서 오픈소스를 사용할 준비가 되어 있지 않다는 저의 무의식적인 생각인가요.>> Mission Critical 한 중요 데이터는 오라클과 같은 상용 데이터베이스를 써야 한다는>> 의견이 많지만, 왜 MySQL 및 기타 오픈소스들은 안될까? 제가 생각하는 이유는 다음과 같습니다.첫째, MySQL을 관리하는 업체가 없습니다.국내에서는 오픈...

    답글삭제