취약점

root 원격 접속 차단이 적용되지 않은 시스템의 root 계정 정보를 비인가자가 획득할 경우
시스템 계정 정보 유출파일 및 디렉터리 변조 등의 행위 침해사고가 발생할 수 있음

따라서 시스템 정책에 root계정의 원격 터미널 접속 차단 설정이 필요!

 

 

보안조치

원격 접속 시 root 계정으로 바로 접속 할 수 없도록 설정파일 수정을 해주자!

손볼 파일은 2가지, /etc/pam.d/login/etc/securetty



 

■ 먼저는 /etc/pam.d/login 설정파일에서 scuretty 보안 모듈을 추가 및 수정해준다

[root@localhost tmp]# vi /etc/pam.d/login
#%PAM-1.0
...
auth       required     /lib/security/pam_securetty.so
...

 

마지막으로 /etc/securetty 설정파일에서 pts부분을 주석처리해주자!

*pts : pseudo terminal slave의 약어로 원격 접속에 사용되는 터미널
*tty  : 로컬 접속에 사용됨

[root@localhost tmp]# vi /etc/securetty
console
tty1
tty2
tty3
tty4
#pts/0
#pts/1
#pts/2
#pts/3
...

 

 

실습

설정 전 

 

설정 후 

 

 

마무리

이렇게 root로의 원격 접속을 막았으나 우회 가능성이 있다.

일반 유저로 들어간 뒤 su명령어를 사용

이에 대한 방어법은 su명령어 제한을 둘 수 있다.

 

 

참조

Unix 서버 취약점 분석, 평가 항목

환경 :

VMware

CentOS Linux release 7.9.2009 (Core)

 

다음 보안 항목을 나만의 리눅스 서버에 적용하자!

 

참조

취약점

공격자는 웹 URL의 GET/POST 파리미터 또는 HTML 코드의 <INPUT> 변수, Hidden field, javascript 변수 등에서 노출되는 데이터를 통해서 서버측 프로그램의 로직 및 역할 등을 유추할 수 있다.

또한 해당 변수의 값을 고의적을 변조하여 특정한 값을 입력하여 전송하므로서 서버측 프로그램이 자신이 원하는 특정 작업을 수행하도록 조작을 시도할 수 있다.


만일 웹사이트 로직이 신중하계 설계되지 않는다면 공격자가 전송한 조작된 입력값에 의해서 서버측 프로그램이 의도되지 않은 오동작이나 정상적인 처리 범위를 벗어난 불법적인 작업이 발생할 수 있다.

 

 대표적인 취약점 예시

[1] 게시물 번호 조작을 통한 타 사용자의 게시물에 대한 무단 열람/수정/삭제
[2] Role based 웹사이트에서 사용자 Role 등급의 임의 변경
[3] 온라인 결재시 상품 금액 등 결재 데이터의 변조
[4] 아이디, 사번 등의 변조를 통해 타 사용자 정보의 무단 열람 및 수정
[5] 회원 가입시 실명 인증에 대한 우회
[6] 접근이 제한되어 있는 정보에 대한 무단 열람 또는 변조
[7] 인증 로직의 우회, 악성 파일의 업로드, 서버측 리소스에 대한 무단 다운로드

1번에 대한 실습을 진행한다.

 

 

실습

[1] 게시물 번호 조작을 통한 타 사용자의 게시물에 대한 무단 열람/수정/삭제

 

■ 글은 보이지 않지만 2번 글이 존재함을 유추할 수 있다.

 

글번호 2를 입력하여 열람해보았더니 열람성공!

 

보안조치

삭제 유무를 표시하는 컬럼을 추가해주자!

앞으로 이값이 1일 때에만 열람을 허용한다.

 

 

결과

똑같이 2번글에 대한 요청을 보내보았으나 이제는 열람이 불가능하다!

' > 보안 설정' 카테고리의 다른 글

[JSP] 10. 디폴트 페이지  (0) 2020.12.27
[JSP] 9. 디렉토리 인덱싱  (0) 2020.12.27
[JSP] 4.파일 다운로드  (0) 2020.09.08
[JSP] 2.SQL 인젝션  (0) 2020.09.08
[JSP] 1-1.Stored XSS 취약점  (0) 2020.09.08

+ Recent posts