메뉴 바로가기 본문 바로가기
상단으로 이동

스터디룸

Enjoy our interesting and informative contents.

웹 서비스와 보안② / 웹 서비스 보안 실무 -2

  • 3887
  • 2014-09-25

다시 돌아왔습니다~ㅋㅋㅋㅋ

 

계속 이어서 이야기 진행합니다~

 

 

 

 

 

웹 서비스와 보안① 보러가기

 

웹 서비스와 보안②-1 보러가기

 

 

 

2.데이터베이스 보안

 

 

 

 

-중요 데이터 필드의 암호화

웹 서버 보안에서 언급한 암호화 알고리듬을 사용하여 작성한 암호화 기법을 이용하여 데이터베이스가 유출 되었을 경우

 

내용을 알 수 없도록 가능한 비동기 방식의 암호화를 권장 합니다.

 

 

비동기 방식의 암호화란 동일한 단어를 암호화 하더라도 암호화 할때마다 암호화된 내용이 달라지는 방식입니다.

 

 

예를들어 “가”라는 단어를 동기식으로 암호화를 할 경우

 

암호화를 할때마다 똑 같은 문자열 “AwGgPTA7AgMCAAECAmYCAgIAgAQI”(실제 암호화된 문자열이 아닙니다.)로 저장됩니다.

 

 

하지만 비동기식으로 암호화 할 경우

 

 “AwGgPTA7AgMCAAECAmYCAgIAgAQI”, “QwGgPTA7AgM777AECAmYCAgIEgAQI”,

 

““AertGgPTA7AgM7AECAmYCAgIFeAQI”등과 같이

 

매번 다른 문자열로 인코딩되어 저장되기 때문에 유출된 데이터를 좀 더 강력하게 보호 할 수 있습니다.

 

 

 

 

- 백업 스케줄 작성 및 실행

악의적인 공격에 의한 데이터베이스 변조 혹은 장비의 물리적 고장으로 인한 데이터베이스 유실에 대비하여

 

백업 스케줄을 작성하여 항상 최신 데이터베이스 자료를 보관하고 있어야 합니다.

 

 

 

 

- 웹 소스에서 In-Line Query 사용 지양

In-Line Query를 사용하게 되면 개발이 편하고 시간 단축이라는 장점이 있지만 웹 소스가 유출될 경우

 

보안에 치명적인 타격을 받을 수 있습니다.

가능한 프로시저 혹은 별도의 FrameWork을 생성 하여 개발 하기를 권장 합니다.

 

 

 

 

3. 웹 소스(개발) 보안

 

 

 

 

- DB-Connection등 중요 정보의 암호화

말이 필요 없이 정말 중요한 부분 입니다.

거의 대부분의 웹 소스에는 데이터베이스 사용을 위해 DB-Connection 정보가 존재 합니다.

그리고 해당 정보가 유출 될 경우 대부분 데이터베이스 정보가 그대로 유출되게 됩니다.

이를 방지하기 위해 2의 데이터베이스 보안에서 언급한 비동기 암호화 방식으로 인코딩한 정보로 작성 후

 

필요시에 디코딩하여 사용하는 방법을 권장 합니다.

 

 

 

 

- 관리자 페이지 및 관리자 계정 관리

누구나 유추 가능한 파일명 혹은 아이디, 패스워드 사용을 지양 합니다.

 

 

 


- 개발시 사용한 테스트용 웹 소스 혹은 사용하지 않는 웹 소스 삭제

대부분 테스트 용도의 파일을 test라는 단어가 포함되어 있습니다.

이를 악용하여 테스트 용도의 파일을 브라우저에서 실행하여 실재 웹 서비스에서는 볼 수 없는 정보들을 취득 할 수 있기 때문입니다. 

 

 

 

 

 

- get방식의 변수 전달 사용시 URL-Encoding 혹은 데이터 암호화 후 전달

각종 변수명 혹은 변수의 전달된 값을 통해 다른 내용을 유추하여 해킹에 사용될 수 있습니다.

 

 

 

 

- Post 방식 사용시 주요 hidden변수 및 입력변수의 데이터 암호화

get방식과 동일 합니다.

 

 

 

 

- 그 외 중요한 해킹 방어

SQL-Injection, XSS, CSRF등 가장 기본적이지만 치명적인 해킹에 대한 방어 프로세스를 마련 할 필요가 있습니다.

 

 

 

 

- 업로드 파일 MIME-TYPE 제한

사용자에게 업로드를 허용할 경우 실행 가능한 파일(특히 *.com, *.exe, *.js, *.asp, *.php, *.aspx, *.pl 등) 및

 

 불필요한 파일의 업로드를 제한하여 악의적인 공격에 대비 할 수 있습니다.

 

 

이상으로 실무에서의 웹 서비스 보안에 대하여 정말 간략하게 살펴 보았습니다.

 

(정말 간략했던가....ㅋㅋㅋㅋ)

 

 

 

 

 

위에서 언급한 내용 외에도 OS 및 DB의 취약점을 이용한 공격 등 다양한 방법으로 웹 해킹이 발생하고 있습니다.

지속적인 관리 및 모니터링을 통해 새로운 해킹 및 보안에 대한 지식을 습득하여

 

기존의 보안 프로세스를 계속해서 업그레이드 하는 것이 최선의 방법이라고 생각 됩니다.

 

 

 

내용이 조금 어려울 수 있을거 같아서요.

 

만약 궁금하신 사항 있으시면 맑음식구분들! 댓글 남겨주세요~

 

성심성의껏 답변 드릴께요♡ 

 

 

 

 

 

 

 

 

 

본 리뷰는 지극히 개인적인 관점과 생각으로 작성된 주관적인 글 입니다

 

ⓒ 언제나 맑음 with 꼬대리 

 

 

 

URL 복사