전체 글 (81) 썸네일형 리스트형 [주통기 웹 취약점] 데이터 평문 전송, 쿠키 변조 데이터 평문 전송: 서버와 클라이언트 간 통신 시 데이터를 평문으로 전송할 경우, 민감한 데이터(계정 정보, 개인 정보 등)가 노출될 수 있는 취약점 공격자는 스니핑을 통해 노출된 정보를 확인하여 사회 공학 공격 등에 악용할 수 있다. !주의! 버프 스위트는 트래픽을 복호화해서 사용자에게 평문 형태로 보여주기 때문에 와이어샤크로 확인해야 함 보안 방법* 웹상에서의 전송 정보를 제한하여 불필요한 비밀번호, 주민등록번호, 계좌정보와 같은 중요정보의 전송을 최소화하여야 하며, 중요정보에 대해서는 반드시 SSL 등의 암호화 통신을 사용하여 도청으로부터의 위험을 제거함 * 쿠키와 같이 클라이언트 측에서 노출되는 곳에 비밀번호, 인증인식 값, 개인정보 등의 정보를 기록하지 않음 * 암호화 전송 시 프로토콜.. 13주차 과제 CSRF 취약점 보고서 보호되어 있는 글입니다. 10주차 과제 XSS 취약점 진단 및 보고서 작성 보호되어 있는 글입니다. [주통기 웹 취약점] 경로 추적, 위치 공개 경로 추적 : 사용자의 입력 데이터가 적절한 검증 없이 URL이나 파일 경로 파라미터에 사용될 경우 중요한 파일 또는 디렉터리에 접근할 수 있는 취약점이다. ../와 같은 상대경로를 계속해서 입력해 가면서 정보가 탈취할 수 있을 때까지 공격자가 입력이 가능하면 해당 취약점이 존재한다고 볼 수 있다. 특히 웹 루트 디렉터리보다 상위 디렉터리에 접근이 가능한 경우 취약하다고 판단한다. [보안 방법] * 웹 사이트에서 접근하려는 파일이 있는 디렉터리에 chroot 환경 적용 시 경로 추적 공격을 최소화할 수 있음 +) 공격에 사용할 수 있는 인코딩 및 문자 ※ URL 인코딩: .(%2e), /(%2f), \(%5c) ※ 16bit 유니코드 인코딩: .(%u002e), /(%u2215), \(%u2216) ※ .. [주통기 웹 취약점] 프로세스 검증 누락, 관리자 페이지 노출 프로세스 검증 누락 : 인증이 필요한 모든 페이지에 대해 접근제어가 미흡하여 비인가자가 접근할 수 있는 취약점 공격자는 중요 페이지에 접근해서 정보를 변조하거나 탈취 할 수 있다. +) 여기서 헷갈리는 점이 생겼다. 그럼 불충분한 인증, 인가와 프로세스 검증 누락은 어떻게 구별하지? 찾아보니 아래와 같이 정리할 수 있다. 불충분한 인증 : 개인정보 수정 시 PW확인이 없는 경우 불충분한 인가 : 민감 데이터나 기능에 접근 권한이 없는 경우 (행위 위주의 느낌) 프로세스 검증 누락 : 민감 페이지 접근이 가능한 경우 (페이지 자체) => 대부분 URL 조작을 통해 접근한다. 사실 이런건 취약점을 찾는 사람이 어떻게 분류하냐에 따라 다르긴 하다. 뭐가 되었든 취약점에 대한 설명만 제대로 할 수 있으면 된다... [주통기 웹 취약점] 자동화 공격 자동화 공격 : 웹 애플리케이션의 특정 프로세스에 자동화 공격 수행 시 요청이 통제되지 않고 수많은 프로세스가 실행되는 취약점 자동화 공격은 Dos, 무차별 대입 공격 뿐만 아니라 다량의 패킷을 요청하는 Blind SQL Injection의 자동화 공격을 수행하는 데 사용될 수 있다. [보안 방법] - 로그인 시도, 게시글 등록, SMS 발송 등에 대한 사용자 요청이 일회성이 될 수 있도록, 캡차(이미지를 이용하여 확인 값을 표시하고 사용자가 값을 등록하여 인증함) 등 일회성 확인 로직을 구현하여야 함 - 자동화 공격을 시도하면 짧은 시간에 다량의 패킷(양)이 전송되므로 이를 공격으로 감지하고 방어할 수 있는 IDS/IPS 시스템을 구축하여야 함. 서버에 요청되는 패킷(양)의 모니터링이 불가능한 경우 적.. [주통기 웹 취약점] 세션관련 취약점 3가지 | 세션 예측, 불충분한 세션 만료, 세션 고정 세 가지 취약점은 세션의 보안 조치가 취약하게 설정되어 발생하며, 공격자는 개인정보 탈취, 사용자 ID 도용, 사용자 ID를 활용한 2차 공격(DoS 등)을 할 수 있다. 세션 예측 : 각기 다른 IP주소, 사용자명, 시간적 차이로 세션 ID를 발급 받았을 때 일정한 패턴(연속된 숫자 할당 등)이 발견되는 취약점 공격자는 세션ID를 추측해서 불법적인 접근 시도가 가능하다. 본인의 세션을 여러 번 생성하여 확인하는 것만으로 보안 취약점을 확인할 수 있다. [보안 방법] - 단순 조합보다는 상용 웹 서버나 웹 애플리케이션 플랫폼에서 제공하는 세션 ID를 사용하고, 가능하다면 맞춤형 세션 관리 체계를 권고 - 세션 ID는 로그인 시마다 추측할 수 없는 새로운 세션 ID로 발급하여야 함 불충분한 세션 만료 : .. [주통기 웹 취약점] 약한 문자열 강도, 취약한 패스워드 복구 약한 문자열 강도 : 사용자 계정, pw 등이 반복되는 패턴을 가지거나 추측하기 용이한 문자열로 이루어진 경우 예측이나 패스워드 크래킹 공격으로 탈취가 가능한 취약점 사용자의 정보를 탈취하거나 관리자 계정 탈취를 통해 서비스를 장악할 수 있는 위험도 높은 취약점이다. [보안 설정] - 취약한 계정 및 패스워드를 삭제하고, 사용자가 취약한 계정이나 패스워드를 등록하지 못하도록 패스워드 규정이 반영된 체크 로직을 회원가입, 정보변경, 패스워드 변경 등 적용 필요한 페이지에 모두 구현 취약한 패스워드 복구 : 패스워드 변경과 같은 프로세스에서 공격자가 다른 사용자의 패스워드를 획득, 변경할 가능성이 있는 취약점 패스워드를 찾을 때 다른 인증을 요구하지 않고 사용자 화면에서 바로 표출하는 경우 혹은 임시로 생성.. 이전 1 2 3 4 5 6 7 ··· 11 다음