보고 있 는 ORACLE 튜 토리 얼 은 Oracle 에 도 구멍 이 있다 는 것 이다.최근 MSN,강 민 등 유명 사이트 들 이 잇따라 해커 들 의 위협 과 공격 을 받 으 면서 한동안 인터넷 상에 서 겁 에 질 렸 다.본 신문 편집 부 는 국내 최대 도 메 인 네 임 공급 업 체(이하'X 망')사이트 의 허점 을 발견 한 경 과 를 상세히 설명 하 는 본문 작성 자(뜨 거 운 천사)의 전 화 를 받 았 다.본 보 편집 부 는 즉시 X 망 의 수석 엔지니어 와 교 류 를 통 해 허점 의 진실성 을 확 인 했 고,이 엔지니어 도 이 구멍 을 제때에 고 쳤 다.10 월 18 일 에 필자 가 가지 고 있 는 프로젝트 를 다 한 후에 인터넷 의 친구 와 이것저것 이 야 기 를 나 누 었 다.친구 사이트 가 열 린 다 는 말 을 듣 고 마음 도 부 러 웠 습 니 다.언제 쯤 내 호스트 와 도 메 인 을 가 질 수 있 을 까.........................................................................홈 페이지 를 여 는 김 에 갑자기 홈 페이지 오른쪽 상단 에 있 는 회원 로그 인 화면 을 보 았 습 니 다.이것 은 필자 로 하여 금'도둑'의 마음 을 다시 일 으 켰 습 니 다.만약 에 어떤 구멍 을 발견 할 수 있 었 으 면 좋 겠 습 니 다.어차피 지금 은 아무 일 도 없 었 습 니 다.필 자 는 포트 스 캔 도 구 를 꺼 내 X 망 의 서버 를 훑 어 보 았 지만 아무 구멍 도 발견 하지 못 해 답답 했다.다시 생각해 보 니 X 망 도 10 여 년 동안 했 기 때문에 이런 대형 사이트 서버 의 안전 조 치 는 적지 않 을 것 이다.맵,게다가 IDS 와 방화벽,패 치 도 이미 다 되 었 을 것 이다.꿀단지 프로그램 이 당신 을 기다 리 고 있 을 지도 모른다 고 할 수 있다!얼마 지나 지 않 아 필 자 는 X 망 이 원래 ASP 로 쓴 것 이라는 상황 을 갑자기 발견 했다.얼마 전 ASP+MSSQL 의 주입 구멍 이 시 끄 러 워 많은 사이트 들 이 고생 했다.여기에 이런 문제 가 있 을 까?몰라,일단 한번 해 보고 보 자.필 자 는 가상 호스트 를 구 매 하 는 페이지 를 찾 았 다.http://www.???.cn/HAS_Client/buy/vir_host/vir_ host1_SB.asp?PackageID=10341。먼저 고전적 인 방법 으로 테스트 를 해 보 았 습 니 다.반환 유형 은 모두 일치 하지 않 습 니 다.'CDbl'오류 입 니 다.X 망 은 어떤 데이터 베 이 스 를 사용 합 니까?필 자 는 매개 변수 뒤에 작은 따옴표 를 붙 이 고 요청 을 제출 하 며 페이지 는 잘못된 정 보 를 되 돌려 주 었 다.원래 Oracle 을 사 용 했 는데 일반 Oracle 데이터베이스 에 이러한 반환 오류 가 발생 하면 빈틈 이 있 을 수 있 습 니 다.이것 은 MSSQL 이 닫 히 지 않 은 따옴표 의 반환 오류 와 차이 가 많 지 않 지만 MSSQL 에 이러한 오류 알림 이 발생 하면 우 리 는 주입 구멍 이 거의 존재 할 것 이 고 Oracle 은 다시 한 번 확인 해 야 한다.다음 몇 단 계 를 침입 의 기초 로 확인 하 는 것 이 중요 하 다.우 리 는 각각 IE 에 입력 합 니 다.http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘and%200<>(select%20count(*)%20from%20all_tables)%20and%20'1‘='1;http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘and%200<>(select%20count(*)%20from%20user_tables)%20and%20'1‘='1;http://www.???.cn/HAS_Client/buy/vir _host/vir_host1_SB.asp?PackageID=10341‘and%200<>(select%20count(*)%20 from%20user_tab_columns)%20and%20'1‘='1;이상 은 필자 가 추측 한 Oracle 의 시스템 표:alltables,user_tables 와 usertab_col umns。없 으 면 안 돼.페이지 가 모두 성공 으로 돌아 갈 줄 은 몰 랐 다.이것 은 필자 가 추측 한 시스템 표 가 모두 존재 한 다 는 것 을 설명 하 는 동시에 제출 한 SQL 문 구 를 설명 하고 프로그램 이 이미 처리 되 었 다 는 것 을 설명 한다.이로써 필 자 는 X 망 에 주입 구멍 이 있 음 을 확인 했다.데이터 베 이 스 를 이용 하 는 것 은 한 사이트 의 중요 한 부분 이 라 고 할 수 있 습 니 다.필자 가 발견 한 이 구멍 을 통 해 우 리 는 데이터 베이스 중의 모든 데 이 터 를 방문 하고 수정 할 수 있 습 니 다.사용자 계 정 뿐만 아니 라 데이터베이스 에 존재 하 는 모든 데 이 터 를 얻 고 수정 할 수 있 습 니 다.Public 그룹 을 여 는 UTLFile 권한 의 경우 서버 에 있 는 파일 을 Union 으로 조회 하고 읽 을 수 있 습 니 다.이 점 과 PHP+MYSQL 에 구멍 이 난 load 를 주입 합 니 다.file()은 비슷 합 니 다.물론 업데이트 같은 것 도 실행 할 수 있 습 니 다.다만 Oracle 주입 구멍 연구 에서 필 자 는 아직 풋내기 로 데이터 삽입 과 더 높 은 주입 공격 을 하지 못 했다.전체 테스트 구멍 과정 에서 NBSI 의 백 스테이지 스 캔 기능 과 WPE 를 활용 해 효율 성 을 크게 높 였 다.이제 필 자 는 X 망 의 모든 사용자 의 정 보 를 얻 을 수 있 고 로그 인하 기만 하면 도 메 인 이름 의 방향 을 쉽게 바 꿀 수 있다.만약 에 필자 가 악의 적 인 공격 자 라면 특정한 상업 사이트 의 도 메 인 이름 을 자신 이 만 든 가짜 사이트 에 가리 키 면 사용자 가 이 상업 사이트 에 로그 인 하 는 계 정 정 정 보 는 안전 하지 않다.사실 이 구멍 은 도 메 인 네 임 납치 와 비슷 하 다.네가 X 네트워크 의 사용자 라면 필 자 는 틀림없이 너의 사 이 트 를 해 킹 할 수 있 을 것 이다.X 망 의 경우 모든 업무 가 영향 을 받 을 수 있 고 데 이 터 는 임의로 조작 할 수 있다.다른 일부 위해 도 분명 하 므 로 더 이상 구체 적 인 설명 을 하지 않 겠 다.패 치 는 이러한 주입 구멍 을 방지 하 는 것 이 간단 합 니 다.URL 에 제출 한 매개 변 수 를 엄 격 히 걸 러 내 면 작은 따옴표,SQL 키워드 등 문 자 를 제거 하면 됩 니 다.구체 적 인 방법:프로그램 을 이용 하여 제출 한 URL 의 물음표 뒤의 문자열 을 검사 합 니 다.작은 따옴표,분점,SQL 키워드 등 특수 문 자 를 발견 하면 사용자 정의 Error 페이지 로 바로 이동 합 니 다.X 망 의 망 관리 로 서 는 이 문 제 를 해결 하 는 데 5 분 도 걸 리 지 않 는 다.또한 X 망 도 데이터베이스 에 있 는 데이터 안전 을 강화 하고 적어도 비밀 을 추가 해 야 한다!참고 로 국내 에는 이런 주입 구멍 이 있 는 사이트 도 많다.편집 후 많은 웜 과 바이러스 의 공격 을 겪 은 후에 사람들 은 보편적으로 서버 의 안전 에 대해 매우 관심 을 가지 게 되 었 고 일부 사이트 에 서 는 심지어 80 포트 만 열 었 다.현재 서버 에서 실행 되 고 있 는 코드 의 안전 이 특히 중요 하 다.코드 상의 작은 소홀 함 은 종종 전체적인 붕 괴 를 초래 할 수 있다.오늘 데이터베이스 의 주입 구멍 이 있 는데,내일 또 무엇이 나타 날 까요?