CI 묻고 답하기

제목 CI의 취약점을 발견한 공격자라면..
글쓴이 hooon.ko 작성시각 2009/09/05 11:41:50
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 35473   RSS
그냥 멍하니 있다가 떠오른 생각인데요..
주소창에 "index.php"를 추가해 보면 CI인지 아닌지 바로 알 수 있겠네요..
예를 들어..http://codeigniter-kr.org/qna/lists/page/1 라는 곳에서 "index.php"를 추가해 보는거죠..
http://codeigniter-kr.org/index.php/qna/lists/page/1 이렇게요..
그래서 같은 페이지가 뜬다면.. 아.. "CodeIngiter로 만든 사이트구나.." 라고 바로 알아챌 수 있겠다라는 거죠..
이런것을 막을 수 있는 방법은 없을까요?
.htaccess(사실 제가 요놈을 잘 몰라요) 같은데에서 index.php로 요청을 하면 차단 한다던지..
.. 너무 엉뚱한 질문인가요.. 제가 찾아봐야겠죠..;;
답을 발견하면.. 올릴게요..

-------- 추가 --------
답변 감사합니다.
이런 주소 방식을 가지는게 CI만이 아니군요..

그리고 질문이 좀 이상했네요..
CI 프레임워크의 취약점을 발견한 사람이 있다면..
그 프레임워크를 사용하는 사이트를 찾아서 해킹을 시도하려 할텐데요.
특정 사이트가 CI를 사용하는지 확인하는 방법이 너무 쉽다라는 말이었습니다.

본문에서 말한데로 index.php 주소 방식을 사용하는 사이트는
CI일 가능성이 높으므로 공격 대상이 될거라는 것이지요.

그래서 요청한 URL이 http://www.codeigniter-kr.org/qna/view/988/page/1처럼
"index.php"를 포함하면 404페이지를 띄운다던지 하는 방법이 있는지 물어본거 였습니다.
 다음글 session view 페이지에서 바로 사용 가능한가요... (11)
 이전글 a href 에 한글 url값이 들어가면 내부링크로 간... (3)

댓글

케이든 / 2009/09/05 14:00:36 / 추천 0
취약점이 곧 보안의 허술함은 아니라고 봅니다.

저도 비슷한 생각을 한적이 있는데요 ( 괜찮은 사이트구나 생각나면 주소에 /wp-admin 쳐봅니다 ㅋㅋ)


보안은 개발자가 따로 해주는 부분이라고 봅니다

또 저런 방식의 주소를 적는곳이 CI말고도 여러군데가 있습니다.

좀더 확실한 방법은 404페이지를 띄어서 default 404 페이지가 뜬다면 어떤 프레임워크인지 한번에 알수있죠..


원하시는 index.php를 못넣게 하는방법은 저도 잘은 모르겠지만

주소 맨끝에 suffix 붙이는 기능이 있던걸로 기억합니다

ci-kr.org/qna/lists/page/1.html 이런식으로요..
마냐 / 2009/09/05 14:18:03 / 추천 0

그건 취약점이 아닙니다.

index.php 의 구조를 가지는건 CI만의 특징이 아닐 뿐더러.
config 에서 index 페이지의 이름을 바꿀 수 있습니다.
케이든님이 말씀하신 것처럼 에러메시지 확인법도 있지만 이 또한 스킨을 바꿀 수 있습니다.

그리고 CI로 만든 사이트라는걸 알아 챈다는 것이 무슨 의미가 있는지 궁금합니다.
오히려 이 사이트는 CI로 만든 사이트다라고 홍보를 해도 모자라지 않나요?
제로보드, 그누보드 같은 공개보드로 만들었다는걸 안다고 한들 무엇이 달라지나요?

보안의 취약점은 개발자가 찾아서 수정해야하는 끝없는 과제죠.

hooon.ko / 2009/09/05 15:19:32 / 추천 0
답변 감사합니다.
이런 주소 방식을 가지는게 CI만이 아니군요..

그리고 질문이 좀 이상했네요..
CI 프레임워크의 취약점을 발견한 사람이 있다면..
그 프레임워크를 사용하는 사이트를 찾아서 해킹을 시도하려 할텐데요.
특정 사이트가 CI를 사용하는지 확인하는 방법이 너무 쉽다라는 말이었습니다.

본문에서 말한데로 index.php 주소 방식을 사용하는 사이트는
CI일 가능성이 높으므로 공격 대상이 될거라는 것이지요.

그래서 요청한 URL이 http://codeigniter-kr.org/index.php/qna/lists/page/1처럼
"index.php"를 포함하면 404페이지를 띄운다던지 하는 방법이 있는지 물어본거 였습니다.
헛발이 / 2009/09/05 17:10:28 / 추천 0
저도 hooon.ko 님과 같은 생각입니다. 뭐 저도 codeigniter가 처음이긴 해서 뭣도 모르고 이야기 하는 것일
수도 있지만... 가장 처음에 접하면서 생각난건 저도 URL에 있었습니다.

뭔 URL이 이렇치? ^^;;

ci세상 / 2009/09/05 17:37:29 / 추천 0
hooon.ko님과 같으신 생각을 하셨다면 아주 보안전문가가 되실 수 있으실것 같습니다.

아시기 때문에 정반대로 CI를 뜯어고쳐 보세요.. (역발상 ~~)

index.php : 충분히 mod_rewrite로 원하시는 파일로 사용하시면 됩니다.

404에러 : error 페이지 수정하시면 됩니다. 정 원하시면 야한 동영상같은것도 넣어두시면 좋겠습니다.^^
=> 그외의 수많은 에러페이지들 다 수정이 가능하구요...

세그먼트체계 : 어떤방식을 원하시나요? 원하시는대로 공식을 만들면 됩니다. (파라미터로는 불가능합니다.)
=> 한글포럼은 배열로 담아서 배열+1다음값을 찾아주기 때문에 이렇게 만들었는데요 배열+5로 한번 만들어 볼까요?
=> page/id/name/part/address/1/홍길동/ddd/1/dddd와 같이 제 맘대로 규칙을 만들었습니다.^^

코어해킹 : 정 불안하시면 코어를 젠드나 암호화 툴로 암호화 해버리세요.. view는 노출되얼지언정 코어는 노출되어도 무관합니다.

무의식해킹 : 위의 모든 불안적인 요소들보다 가장 무서운것인 케이든님이 말씀하신 개발자들의 무의식적인 잠재의식을 해킹하는것입니다. 아무리 보안보안해도 다 소용없습니다. 개발자가 남들과 똑같이 서버를 관리하고 개발을 한다면 100% 소스는 노출된다고 생각하시면 좋을것 같습니다.
=> 이런 피해를 한번이라도 당해보셨다면 남들과 똑같은 방식은 추구하지 않을것이라는 부분입니다.




CI가 과연 ~~ 보안에 취약한지는 그럼 해답이 다 나왔네요 ~~ 이것말구도 엑티브 레코드를 사용하면서 자동으로 보안처리하는 부분들 ~~ 기타 보안부분들이 신경안써도 그냥 지원이 되니 ~~ 기본 메뉴얼만 따라 주신다 하더라도 보안개발은 했다고 장담 드리겠습니다.

저희 한글 포럼에서는 그냥 개발했을때와 CI를 통한 개발을 했을때 보안시뮬레이션을 동영상으로 만들어서 올려볼 예정입니다. 아마두 그런 정보를 보시면 CI가 단순개발보다는 좋다는 부분을 인식하실 수 있을거라고 생각이 듭니다.


hooon.ko / 2009/09/05 17:53:58 / 추천 0

답변 감사합니다.
의도와는 다르게 마치 CI가 보안에 취약한것 처럼 되버렸네요.
기분이 상하셨다면 죄송합니다.
빨리 답을 찾아서.. 올려야 겠네요..

헛발이 / 2009/09/05 18:09:35 / 추천 0
그러게요... 의도와 다르게 제가 한마디 덧붙이는 바람에 이렇게 된거 같네요 ^^; (죄송죄송)
귀엽게 봐주세요... 아직 초짜라서 ^^;