8. 애플리케이션 보안
2021. 10. 17. 14:05ㆍTopcit 정리/기술 영역 - 보안 이해와 활용
반응형
시큐어 코딩
개발단계에서 보안 약점을 제거함으로써 소프트웨어의 취약점과 해킹의 위험성을 줄여주는
방어적 프로그래밍 기법이다.
시큐어 SDLC
요구사항 정의 단계
잠재적 위협에 따른 보안 취약점 및 영향도를 분석한다.분석 단계
보안 요구사항을 정의하고 보안 시스템 구축을 위한 개발자 교육을 실시한다.코딩 단계
프로그래밍 언어의 약점과 강점을 파악하여 코딩 규칙을 정의하고 조치 내용을 점검한다.테스팅 단계
동적 단위 테스트를 실시하고 보안 적용된 프로그램의 사용성 테스트를 수행한다.유지보수 단계
보안 영향도 평가를 수행하고, 취약성을 점검한다.
시큐어 코딩 기법
JAVA
SQL 삽입 공격 대응
PreparedStatement 객체를 이용하여 DB에 쿼리문을 날린다.
위 객체는 특수문자 및 쿼리 예약어를 필터링 하고 스프링과 같은 프레임워크를 사용하는경우
모듈에 맞춰 변형해야한다.
크로스 사이트 스크립팅 공격 대응
외부 입력값에 스크립트가 삽입되지 못하도록 함수 또는 메소드를 사용하여 < > & 기호를
< > & 등으로 바꾼다.
운영체제 명령어 삽입 공격 대응
웹 인터페이스를 통해 서버 내부로 시스템 명령어를 전달시키지 않도록 구성하고,
외부에서 전달되는 값은 무조건 검증을 거친다.
C
메모리 버퍼 오버플로 공격 대응
적절한 버퍼의 크기를 설정하고 설정된 메모리 내에서 올바르게 읽거나 쓰게 한다.
문자열 저장시 널 문자로 종료하게 한다.
포맷 스트링 삽입 공격 대응
printf()등 포맷 문자열을 사용하는 함수를 쓸때 사용자가 포맷 스트링을 못 바꾸게 한다.
Android-JAVA
외부 접근 가능한 컴포넌트 공격 대응
컴포넌트에 대한 접근권한이 외부에 제공되는지 확인한다.
공유 아이디에 의한 접근통제 통과 공격 대응
배포 버전에서 xml에 공유 아이디 항목을 뺀다
반응형
'Topcit 정리 > 기술 영역 - 보안 이해와 활용' 카테고리의 다른 글
10. 시스템 아키텍처 보안 (0) | 2021.10.19 |
---|---|
9. 데이터베이스 보안의 개요 (0) | 2021.10.17 |
7. 보안관리체계와 표준 (0) | 2021.10.13 |
6. 최신기술 관련 보안 동향 (0) | 2021.10.12 |
5. 최신 정보 보안 위협 (0) | 2021.10.10 |