1. 안전하지 않은 예외처리 - 프로그램에서 발생되는 예외를 처리하지 않거나 적절하게 처리하지 않는 경우 - e.printStackTrace() : IDE 툴에서 자동으로 만들어주는 에러 스택 출력 메소드이다. 이 오류 메시지에는 시스템에 대한 상세한 정보가 출력된다. - 로그 파일에 예외시 출력된 스택 정보가 저장 되어 있는 지 확인하고, 스택 정보가 있다면 해당 사이트에 접속해 에러를 발생시켜 에러 처리 상태를 확인한다. 2. 예외처리 1 2 3 4 5 6 7 8 9 10 11 StringBuffer buffer = new StringBuffer(); String data = request.getParameter("data"); try{ data.trim(); } catch (Exception e) ..
1. 파일 업로드 / 다운로드 취약점 - 업로드 기능에서 파일 사이즈의 제한을 주지 않을 경우 - 파일 타입의 체크가 없는 경우 - 파일이 업로드 되는 경로가 외부에서 직접적으로 접근 가능하거나 실행 권한을 가지게 되는 경우 2. 취약점 제거를 위한 보안코딩 기법 - 업로드 되는 타입이나 확장자를 체크하여 허용되는 확장자 또틑 타입의 경우에만 업로드 할 수 있도록 한다. - 업로드 되는 파일은 외부에서 직접 접근이 불가능한 경로에 저장한다. - 업로드되는 파일의 이름과 실제 저장되는 파일의 이름을 다르게하여 공격자가 파일을 직접 엑세스 할 수 없도록 한다. 3. 시큐어 코딩 - 파일 확장자를 체크한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 if( !uplo..
크로스 사이트 요청 위조 : 사이트가 신뢰하는 사용자(인증된 사용자)를 통해 공격자가 원하는 명령을 대신 실행하게 된다. 대부분의 웹사이트에서 사용자가 보내는 요청 데이터가 정상적인 경로를 통한 요청인지 구분하지 못한다. 1. GET 방식 CSRF : 공격자는 게시판 등에 이미즈 태그를 보이지 않도록 사이즈를 최소화하여 자신의 계좌로 이체를 수행하는 요청 URL을 삽입해, 사용자가 해당 글을 클릭했을 때 계좌 이체가 실행되도록 공격할 수 있다. 2. POST 방식 CSRF : 가장 많은 CSRF 공격방식은 자동 글쓰기 이다. 3. 대응기법 : CSRF 공격 취약점을 예방하려면 실제 사용자의 브라우저에서 이볅된 값을 이용해 요청이 발생되었는지를 서버에서 점검할 수 있도록 해야 한다. - CSRF 를 근본적..
크로스 사이트 스크립팅 ( XSS ) : 게시판, 웹 메일 등에 삽입된 악의적인 스크립트에 의해 페이지가 깨지거나 다른 사용자의 사용을 방해허거나 쿠키 및 기타 개인정보를 특정 사이트로 전송시키는 공격 ( NAVER 지식백과 ) XSS 공격 유형에는 Reflective XSS, Stored XSS, DOM XSS 세 가지가 존재한다. 1. Reflective XSS - 공격자가 악성 스크립트가 포함된 URL을 클라이언트에게 노출시켜 클릭하도록 유도하여 쿠키 정보를 탈취하거나, 피싱사이트, 불법 광고 사이트로 이동하게 한다. - JSP나 서블릿 코드에서 사용자의 입력 값을 검증하지 않고 그대로 브라우저로 출력하는 경우 발생한다. - 텍스트 필드에 를 입력하여 전송버튼을 눌렀을 때, Alert 창이 뜨게 된..
1. 로그인 시도 횟수 제한 - 로그인 시도 횟수에 제약을 주지 않는다면 공격자는 툴을 이용하여 무작위 대입 공격을 시도해 사용자의 로그인 정보를 얻을 수 있다. - 때문에 로그인 시도에 대한 횟수를 체크하여 계정에 대한 보호조치를 취하여 대입공격을 막아야 한다. - Standalone 서버에서 Singleton Pattern 의 코드를 사용하면 편리하다. 2. Singleton Pattern ? - 객체를 한번만 생성하고, 그 객체에 접근이 가능하도록 하는 기능 - 객체 생성할 때 실행되는 생성자는 private로 접근을 막는다. - 기존의 방법으로 생성자를 매번 생성한다면 객체마다 값이 달라지지만 Singleton을 이용하면 값이 같아진다. 3. Singleton Pattern을 이용한 로그인 시도 ..
- Total
- Today
- Yesterday
- RequestMapping
- sort
- controller
- AlertDialog.Builder
- BFS
- Baekjoon Online Judege
- 안드로이드 비콘
- INSERT
- 안드로이드 스튜디오
- DFS
- indexOf
- java
- table
- list
- 이클립스
- servlet
- restfb
- onPostExecute
- 자바
- onBackPressed
- mybatis
- jsp
- DP
- REDIRECT
- Spring
- maven
- order by
- 예외처리
- boj
- algorithm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |