본문 바로가기
정보 보안 해킹 공부/모의해킹

주요정보통신기반시설 취약점 분석/평가 웹 진단 항목들 정리

by 박나무 2022. 6. 17.
반응형

설명// 원인/ 위협/ 대응

그때 그때 정리하여 수정했더니 문맥상 말이 안될 수도 있음...

  • 주통기 항목들 설명 위협 대응.
  • 하나 하나 자세하게 공부.

  1. 운영체제 명령 실행
    • 시스템 명령어를 실행시킬 수 있는 취약점입니다.
    • *필터링 shell_exec(cmd), passthru(cmd), system(), exec(), ;, &&, \\|\\|, \\| 등
    • 시스템 명령어에 대한 사용자 입력값 필터링이 제대로 이루어지지 않아,대응 방안으로는 시스템 명령어에 대해 필터링하여 OS명령을 막을 수 있습니다.
    • 백도어 설치, 관리자 권한 탈취 등 시스템에 심각한 영향을 미칠 수 있으며,
  2. SQL 인젝션
    • SQL쿼리문을 주입하여 데이터베이스에 악의적인 요청을 하는 취약점입니다.
    • *필터링 select, from, where, union, ', ", ; 등
    • 사용자 입력값에 sql쿼리문에 관련된 문자열들이 필터링 되지 않으면대응 방안으로는 sql쿼리문에 대한 필터링, 이스케이핑으로 인젝션을 막을 수 있습니다.
    • 데이터베이스의 중요정보를 탈취 당할 위험이 있으며,
  3. 디렉터리 인덱싱
    • 서버내 모든 폴더의 이름이 웹 화면에 나타나는 취약점입니다.
    • 서버의 미흡한 설정으로 인해대응 방안으로는 각 서버에 따라 디렉토리 검색 체크해제(IIS), Httpd.conf 파일에서 DocumentRoot 항목의 Option에서 Indexes 제거(APACHE)해 막을 수 있습니다.
    • 톰켓 - **web.xml** 파일에서 listings 노드의 값을 **false**로 부여
    • 접근 가능한 모든 파일 목록을 열람 및 다운로드 가능할 위협이 있습니다.
  4. 정보 누출
    • 웹 사이트의 중요 정보나 개발 과정의 주석이 에러 메세지 등 의도하지 않게 노출되는 취약점입니다.
    • 개발자의 부주의로 인해대응 방안으로는 에러 메세지를 바로 표시하지 않고 특정 URL로 리다이렉트 시킵니다.
    • 중요정보나 주석으로 작성한 테스트 계정 및 암호가 에러 메세지 등으로 노출되어 공격자의 2차공격을 위한 정보수집이 될 수 있으며,
  5. 악성 콘텐츠
    • SQL Injection, XSS, 파일 업로드 등을 통해 악성 콘텐츠가 삽입된 페이지에 접속하여 악성코드에 감염될 수 있는 취약점입니다.
    • 사용자 입력값에 대한 필터링이 제대로 이루어지지 않아,대응 방안으로는 SQL Injection, XSS, 파일 업로드 등 악성 콘텐츠 삽입이 가능한 취약점을 제거하여 막을 수 있습니다.
    • SQL Injection, XSS, 파일 업로드 등을 통해 악성 콘텐츠가 삽입된 페이지를 접속 시 악성코드 유포 사이트로 자동 호출되어 악성코드에 감염될 수 있고,
  6. 크로스사이트 스크립팅
    • 사용자에게 악성스크립트가 실행되도록 해 세션을 가로채거나, 악의적인 피싱 공격을 진행하는 취약점입니다.
    • Script 관련 문자열이 필터링 되어있지 않으면,대응 방안으로는 Script 관련 문자열을 필터링하여 스크립트의 실행을 막을 수 있습니다.
    • 스크립트가 삽입된 콘텐츠를 열람 시 공격자의 의도에 따라 세션을 가로채거나, 악성코드를 다운 받도록 유도할 수 있습니다.
  7. 약한 문자열 강도
    • 사용자의 아이디나 비밀번호 또는 정보가 유추 가능한 값으로 된 취약점입니다.
    • 사용자의 아이디, 패스워드에 적절성과 복합성이 적용되지 않으면,대응 방안으로는 아이디 및 패스워드에 적절성과 복합성을 적용해 해결가능합니다.
    • 단순 조합이나 유추를 통해 계정 탈취가 가능할 수 있습니다.
  8. 불충분한 인증
    • 인증이 미흡하여 권한이 없는 사용자가 접근할 수 있는 취약점입니다.*인증이란? 유저가 누구인지 확인하는 절차, 회원가입하고 로그인 하는 것.
    • 사용자에 대한 인증이 미흡하여,대응 방안으로는 중요 페이지 접근에 대해 추가 **인증**을 구현하여 막을 수 있습니다.
    • 파라미터 변경을 통해 접속하여 정보를 유출하거나 변조할 수 있고,
  9. 취약한 패스워드 복구
    • 패스워드 재설정 시 일정 패턴으로 생성되고, 화면에 출력되는 취약점입니다.
    • 패스워드를 찾을 때 문자나 다른 인증 없이 화면에 바로 표출하여,대응 방안으로는 일정 패턴이 아닌 난수로 재설정되고 인증된 사용자 메일이나 문자를 통해 확인할 수 있도록 조치합니다.
    • 공격자가 패스워드 확인하여 계정을 탈취 할 가능성이 있고,
  10. 세션 예측
    • 연속된 숫자 등 예측 가능한 일정 패턴의 세션이 생성되어 탈취 위험이 있는 취약점입니다.
    • 예측 가능한 패턴의 세션 생성으로,대응 방안으로는 세션 이름과 값의 패턴을 공격자가 분석하지 못하게 조치합니다.
    • 공격자가 가로챈 세션을 이용해 계정을 탈취할 가능성이 있다.
  11. 불충분한 인가
    • 사용자에 대한 잘못된 권한을 부여하여 무분별한 접근이 가능하게 되는 취약점입니다.*인가란? 유저에 대한 권한을 허락하는 것.
    • 접근 권한에 대한 검증 로직이 구현되지않아,대응 방안으로는 접근제어가 필요한 모든 페이지에 권한 검증 로직을 구현한다.
    • 관리자나 다른 사용자의 민감한 정보를 열람 및 변조할 가능성이 있다.
  12. 불충분한 세션 만료
    • 세션의 만료 기간을 정하지 않거나, 너무 길게 설정하여 만료되지않은 세션을 공격자가 활용하게 되는 취약점입니다.
    • 세션의 만료 기간이 너무 길거나 설정되어 있지 않아,대응 방안으로는 세션의 유지시간을 약 30분 정도로 설정해 보호가 가능합니다.
    • 공격자가 만료되지 않은 세션을 활용해 각종 정보탈취 및 변조가 가능합니다.
  13. 세션 고정
    • 발급 받은 세션ID가 로그인 전/후 모두 동일하게 재사용되어 공격자가 세션 탈취를 통해 접근하는 취약점입니다.
    • 로그인 시 발행된 세션ID가 로그인 후에도 같아,대응 방안으로는 로그인할 때마다 예측 불가능한 새로운 세션ID를 발행하고 기존 세션ID는 파기하도록 구현합니다.
    • 세션ID를 도용한 공격자의 접근 및 권한 우회가 가능해 추가적인 위험이 발생 할 수 있습니다.
  14. 프로세스 검증 누락
    • 인증이 필요한 중요 페이지에 대해 인증없이 URL로 직접 접근이 가능한 취약점입니다.
    • 중요 페이지에 대해 인가된 사용자인지 검증이 존재하지않아,대응 방안으로는 인증이 필요한 모든 페이지에 유효 세션임을 확인하고 접근 요청자의 권한 검증 로직을 적용합니다.
    • 비인가자가 URL을 통해 인증없이 직접 접근할 가능성이 존재한다.
  15. 파일 업로드
    • 파일 업로드 기능이 존재하는 웹사이트의 확장자 필터링이 미흡할 경우, 공격자가 악성 파일을 업로드하여 시스템을 장악할 수 있는 취약점이다.
    • 파일 업로드 기능의 확장자 필터링이 미흡하면,대응 방안으로는 whitelist를 통해 허용되지 않는 모든 부분을 필터링하여 업로드를 제한하고, 파일이 저장되는 경로에서 실행 권한을 제거한다.
    • shell을 획득하는 악성 스크립트 업로드 후 실행하여 시스템 권한을 획득하거나 서버를 변조 시키는 등 악성코드 배포, 정보 유출등 많은 위험 가능성이 있다.
  16. 파일 다운로드
    • 파일 다운로드 기능 사용 시 경로를 변경하여 임의의 위치에 있는 파일을 열람하거나 다운 가능한 취약점
    • 파일 경로와 파일명 필터링이 미흡하여,대응 방안으로는 경로 관련 문자열에 대한 필터링 로직을 구현합니다.
    • 허용되지 않은 경로로 계정 리스트 파일, 패스워드 파일 등 중요 정보 파일들을 탈취 당할 수 있다.
  17. 관리자 페이지 노출
    • 관리자 페이지가 추즉 가능한 형태로 구성되어 있을 경우 공격자가 관리자 페이지에 쉽게 접근할 수 있으며 관리자 권한이 노출될 경우 사이트 변조 및 권한이 탈취될 수 있는 취약점.
    • 관리자 페이지가 유추 가능한 형태로 구성되어 있어,대응 방안으로는 관리자페이지에 특정 IP만 접근할 수 있도록 적용한다.
    • 공격자가 쉽게 접근할 수 있고, 관리자 권한이 노출될 경우 사이트 변조 및 탈취될 수 있다.
  18. 경로 추적
    • 웹사이트 서버의 파일 또는 디렉토리에 대한 접근이 허용되어 있어 경로가 탈취되고 중요 정보 획득 및 변조가 가능한 취약점입니다.
    • 웹 루트 디렉토리보다 상위 디렉토리에 접근이 가능하여,대응 방안으로는 사용자가 접근할 수 있는 최상위 디렉토리를 웹 루트로 설정하여 시스템 루트로 접근하지 못하게 제한한다.
    • 상대 경로를 입력해가며 탈취를 시도할 수 있다.
  19. 위치 공개
    • 예측 가능한 폴더나 파일명 사용으로 위치가 노출되어 공격자가 이를 악용하여 정보 및 데이터에 접근하는 취약점입니다.
    • 디렉토리 인덱싱 취약점이 조치되어 있지 않을 경우(접근 가능한 파일목록을 보는),공격자가 정보 및 데이터에 접근할 위협이 있습니다.
    • 대응 방안으로는 디렉토리 인덱싱 취약점을 조치하고, 불필요한 확장자 파일을 전부 제거합니다.
    • 예측 가능한 폴더나 파일명의 사용으로 위치가 노출되어,
  20. 데이터 평문 전송
    • 서버와 클라이언트간 통신 시 평문으로 송수신되어 공격자가 도청할 경우 데이터를 획득할 수 있는 취약점입니다.
    • 암호화 통신이 적용되지 않아,대응 방안으로는 SSL/TLSv1.2 이상의 안전한 암호화 통신을 적용한다.
    • 실명인증과 같은 민감한 데이터를 평문으로 송수신하여 데이터가 노출 될 위협이 있다.
  21. 쿠키 변조
    • 보호되지 않은 쿠키를 사용하여 쿠키 값 변조를 통한 위변조가 가능한 취약점입니다.
    • 보호되지 않은 쿠키를 사용하여,대응 방안으로는 XSS에 대한 조치가 되어야 하며, 쿠키 대신 Server Side Session을 사용합니다.
    • 사용자 정보, 중요정보 들을 쿠키에 담아 놓은 경우 이러한 정보가 쉽게 탈취당할 수 있다.

  • 쿠키인증 - 사용자 정보를 맹신하여 문제.
  • 쿠키를 암호화 하여 서버에서 복호화?
반응형

댓글