Secure Coding

동글래차·2023년 5월 27일
0

web

목록 보기
3/6
post-custom-banner

1. Input Validation

  • 사용자에게 입력하길 바라는 데이터 타입, 길이 등이 일치 여부를 확인하는 방법
  • 값을 입력하지 않았을 경우 서버 시스템에게 전송하지 않거나 받아서 처리하지 않는 방법

2. Sanitizing

  • 입력값을 시스템에서 처리할 때 문제를 발생기킬 수 있는 데이터를 제거하거나 수정하는 방법
  • Input Validation은 데이터를 받아들이지 않음 하지만 Sanitizing은 값은 받아들이되 문제될 값은 수정을 함

    2.1. Sanitizing 장점

    1. 코드를 크게 수정하지 않고 적은 비용을 들여서 적용하는 것이 가능함
    2. 코드를 크게 수정하지 않기 때문에 오류 발생률이 낮음

    2.2. Sanitizing 방법

    1. 개행(Line Break), 탭 혹은 공백을 의미하는 데이터를 제거함
    2. DBMS에서 사용되는 ',--, # 등의 특수문자를 제거함
    3. 예상하는 입력 데이터의 패턴에서 벗어나는 데이터를 제거함

    2.3. Sanitizing 예시

    * Wordpress - sanitize_email()
    	- 이메일 주소가 일반적으로 가지는 문자열 포맷의 범위를 벗어나는 문자를 제거하는 함수
    	ex) Do !n !gl!e:)@gmail.com => Dongle@gmail.com
        

3. Escaping (securing Output)

* 사용자에게 전달되는 데이터를 처리하는 보안 코딩 방법
* 사용자가 개발자가 의도하지 않은 랜더링을 하지 않도록 조치하는 보안코딩 방법
profile
동글동글
post-custom-banner

0개의 댓글