웹 발전이 빠르게 이루어지고 또한 최근 Ajax의 대두로 인해 자바스크립트가 다시금 기지개를 켜고 있다.
 그런 의미에서 잠깐 자바스크립트를 통한 제약 설정이 얼마나 취약한지 알아보려 한다.
 설정되는 상황은 서버사이드에서는 어떠한 제약 설정도 존재 하지 않으며 자바스크립트에만 제약 사항이 존재한다고 가정한다.

 간단한 예를 들어보자.
 DB 스키마에 아이디 속성이 8글자로 한계지어져 있다고 하자.
 그렇다면 프로그래머는 이용자가 가입시에 아이디를 8글자 이내에서만 받기를 원할 것이다. 이 때 자바스크립트로 아이디 필드를 체크해서 서버사이드로 넘기게 프로그래밍을 하였다고 한다면, 이 제약사항은 풀리기 쉽다.
 파이어폭스에 Firebug라는 플러그인을 사용한다면 매우 손쉽게 동적 페이지의 구성을 변경하고 적용해볼수 있다.
 단순히 Firebug에서 제약사항이 담겨있는 자바스크립트를 찾아 제약사항을 바이패스(bypass) 하게끔 편집하고 페이지에 입력해서 넘기면 제약사항은 간단하게 풀려버린다.
 이 예의 경우는 단순히 사용자의 문의가 생겨서 프로그래머가 곤혹을 겪기만 할 문제이지만, 이게 해킹으로 연결되면 문제는 무시무시해진다.

 예를 들어 SQL Injection 해킹을 막기 위해 프로그래머가 보안을 위해 제약 설정을 했다고 하자. 그런데, 너무나 귀찮은 나머지 그냥 스크립트로 휙 하고 체크하고 넘기게 했다면, 이 프로그래머는 짤릴 위험성을 스스로 열어버린것이다.

 뿐만 아니라 필자는 이러한 방법을 통해 ZB XE 솔루션을 통해 만들어진 학교 게시판에서 익명의 글들의 작성자가 누구인지 알아 내기도 했었다. 익게에는 스크랩 버튼이 없지만, 다른 페이지에 있는 스크랩 소스를 익명 게시판에 Firebug를 통해 붙이고 스크랩해서 확인하는 방법을 사용했었다. (물론, 되는걸 확인 후에 바로 건의해서 이 취약점은 학교 게시판에서 없어졌다.)

이처럼  WEB2.0이 대두되고, 많은 프로그래머들이  웹프로그램의 레벨을 일반 오프라인 프로그램(적당한 단어가 생각이 안나네요) 수준으로 올리기 위해 자바스크립트가 많이 사용되고 있다. 하지만 자바스크립트가 쉽고 편하다 할 지라도, 그리고 동적이기에 좀더 친사용자 적이라 할 지라도, 프로그램의 눈길이 닫지 못하는 곳에 중요한 부분을 만들어두는 방법은 지양해야 할 것이다.


 ...너무나 당연하고 모두 아는 내용을 적은건지 하는 의문도 들긴 하지만,, 워워..

Posted by 마루바램

2008/11/22 17:16 2008/11/22 17:16
,
Response
No Trackback , a comment
RSS :
http://www.idelines.net/blog/rss/response/345

Seal (실), 실타래를 보다.

 WWW를 서핑하다보니, 어떤 블로그에서 실타래,SEAL 이라는 것을 알게되었고, 공식 홈페이지로 가게 되었다.
 공식 홈페이지의 소개로는 다음과 같다.
영어로 'Seal'은 휘장/명찰
한글로 '실'은 무언가를 이음
나를 표현하는 "휘장, 명찰",그리고 블로그/카페를 모두 하나로 "잇는"기능
 뭐, 나를 표현하는 Icon,같은 Seal을 달고 있는 사람들과 소통기능, 진화하는 Seal 등 특징들이 나와있지만 그냥 딱 보는 순간, 이거 동맹아니야? 하는 생각이 들었다.

 한때 WWW의 보급과, 초고속인터넷의 각 가정의 보급 이후 우후죽순 생겨난 개인홈페이지들은 동맹이란걸 달고 있었다. 그 때는 한참 네띠앙 개인홈페이지등등 공간을 제공하던 곳도 있었고, 지금이라면 생각도 못할 50MB 라는 파격적인 엄청난 공간을 제공하는 하이홈도 있었다. 거기에 슈퍼보드등의 무료 게시판을 연결시켜서 만들던 홈페이지가 재미가 솔솔했던지..
 아무튼, 동시에 튀어나온게 여러가지 만화 캐릭터나 어떤 작품, 영화 등등으로 하나의 동맹을 맺는 홈페이지들이 있었다.
 (지금도 물론, 여러 블로그 사이들에서는 존재한다. )
사용자 삽입 이미지

동맹의 한 예

  홈페이지 귀퉁에 주렁주렁 매달아 두던 동맹 배너와 동맹 홈페이지들이 한때는 자랑이던 시절도 있었지요.
 
 실타래의 경우에는 개인이 만든게 아니라 실타래 쪽에서 제공해주는 실들에 한정되어 있는게 기존의 동맹과는 많이 다른 부분이지만, RSS로 실을 단 블로거들끼리 포스트를 공유할 수도 있으니 첨단 기능이 부가된걸로 만족해야 하나?

 

Posted by 마루바램

2008/11/17 20:30 2008/11/17 20:30
, ,
Response
No Trackback , 2 Comments
RSS :
http://www.idelines.net/blog/rss/response/342

DOM(createElement) VS innerHTML

새벽에 열심히 프로젝트를 진행하다가 문득 궁금해져버렸다.

DOM 에 직접적으로 접근하여 개체를 생성, 삭제, 갱신 하는 방법과
innerHTML로 그냥 쉬릭 써버리는 방법 중 어느게 빠를까.

원래 예상은 표준인 DOM을 통한 억세스가 좀더 낫지 않을까 였으나, innerHTML 방식이 더 빠른 벤치 결과를 보게되었다.

나름 innerHTML에다가 쓰면 자바스크립트와 브라우저 나름대로 파싱을 다시 해서 DOM에 넣어버리는게 아닐까....라는 이상야릇 추측성 생각을 가지고 접근했었는데 아니었다 보다;

속도는 거의 3배 정도 innerHTML이 빠르더라.

그런데, innerHTML이 비표준이라 앞으로 나오는 브라우져들은 점차 지원을 안할 계획이란다.

표준을 따르는 것에도 이유가 있겠지만, 속도를 포기하고 표준을 중시하는 것.

그냥 조금 이상하다고 생각되었다. 목적이 속도인가? 아니면 어떠한 규칙, 표준을 지키는 것이 목적인가.

뭐, 어쨌든 innerHTML을 지원하지 않는 플랫폼이 나온다면야 당연히 DOM으로 가야하지만.....

Posted by 마루바램

2008/11/12 02:10 2008/11/12 02:10
Response
No Trackback , No Comment
RSS :
http://www.idelines.net/blog/rss/response/341

문득..

어쩌다가 아이마스 관련 영상을 보게 되었다.
멍하니 보다가 문득 그런 생각이 들게 되었다.

'이런 것처럼, 비슷하게 공연 기획 혹은 시뮬레이션
 프로그램이 있으면 자라나는 공연 기획자들이 쉽지 않을까?'

아마도 최근 교회에서 한달정도(라지만, 주일에만) 방송실에서
예배 진행을 도운 경험이 좀더 작용했으리라..

게다가 아이마스 영상 가운데 간간히 보이는 조명 장비들은
다 실제에서도 보던거 아닌가! 뭐 아이마스를 해본게 아니기에
어느 정도로 세세하게 설정할 수 있을지는 모르겠지만...
필터나 등등 여러가지 다 조정할 수 있다면야..

매주 토요일 예배 때 사용할 씬을 짜느라 밤을 새우시던 조명
간사님이나. 열심히 카메라들 호출하고 싸인 주시면서
전체 영상 담당하시던 실장님....

그래서 혹시나 하고 찾아봤는데, 왠걸 있더라;

쩝. 역시 프로그래밍의 세계에서 블루 오션 찾기란...

Posted by 마루바램

2008/11/09 23:52 2008/11/09 23:52
Response
No Trackback , No Comment
RSS :
http://www.idelines.net/blog/rss/response/340


블로그 이미지

- 마루바램

Archives

Calendar

«   2008/11   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

Site Stats

Total hits:
115371
Today:
89
Yesterday:
206