본문 바로가기

코리아IT아카데미 [국비과정]/수업

[Linux] 웹 취약점 및 보안, SSL

웹 취약점 및 보안

테스트하기 위한

파일 gzip 압축

 

웹에서 파일 및 디렉터리 목록 확인

 

Options 지시어를 지움으로써

디렉토리 및 심볼릭 링크 허용 X

(보안적으로 보여주지 않음)

 

구글에 intitle index of

입력해보면 디렉토리 목록

취약점을 이용하여 유포된 것을

확인할 수 있음 (꼭 보안해야함)

 

지시어를 지워서 파일 및 디렉토리

목록 표시가 되지 않는 것을 확인

 

하지만 Forbidden 오류 페이지가

해커 입장에서는 보안 페이지로 확인

 

403 오류 : Forbidden

파일 및 디렉토리 권한 설정 잘못되어

사용자가 접근할 수 없을 때 발생

 

404 오류 : Not Found

사용자가 요청한 URP에 해당 자원을

서버에서 찾을 수 없을 때 발생

 

위 Options 지시어를 지움으로써

Forbidden 오류 페이지(403)를 띄움

 

해커는 이 페이지가 존재하는 페이지인데

권한이 없다는 것을 확인할 수 있음

그래서 403, 404 오류가 뜰 때 똑같이

index.html 내용으로 띄우게 만듬

(리다이렉트)

 

로그인페이지 대한 html 작성

 

로그인 페이지 웹에서 확인

 

method를 GET방식으로 사용

(URL의 쿼리 문자열 전송 방식)

 

ID : sab, PW : sab 를 입력하게 되면

 

ID와 PW가 URL에 그대로 

보이게 됨, 매우 취약

(위 로그인과 ID, PW가 다르게

나오는 이유는 스샷을 못찍어서

급하게 다르게 찍음)

 

원래는 로그인 한 값 sab가 나오는게 맞음

 

 

와이어샤크로 확인해보면 

패킷 그대로 확인 가능함.

 

OpenSSL을 사용하여 

RSA 개인 키를 생성

 

RSA 개인 키를 사용하여 CSR를 생성

이 CSR 파일은 인증 기관에 제출

SSL 인증서를 발급받기 위한 요청

 

CSR 파일을 바탕으로 자체 서명된

SSL 인증서를 생성, 365일 유효하며

sevas.key 파일을 사용하여 서명함

 

인증서 확인

x.509 인증서(crt파일)를 읽고

텍스트 형식으로 인증서 출력

 

vi /etc/httpd/conf.d/ssl.conf

서버 인증서 파일(sevas.crt)의 

경로를 지정하여 아파치가 클라와

안전한 HTTPS 연결을 위해

사용할 공개 키 인증서를 설정

 

서버의 개인 키 파일(sevas.key)의

경로를 지정하여 서버가 클라와

안전한 연결을 위해 사용할

개인 키를 설정

 

hostname을 www.sevas10.com 변경

다른 시스템이 이 시스템을 식별함

해당 서버는 이 이름으로 네트워크 인식

 

방화벽 https(443) 포트 추가

httpd 데몬 재실행

 

https로 접속 확인

 

와이어샤크에서 확인해보면

암호화 되어 있는 것을 확인할 수 있음

 

www.sevas10.com을

https로 자동 리다이렉트

 

http://sevas10.com으로 접속 시

리다이렉트하여 https로 접속 됨