System Security Day_003

2023. 12. 17. 15:00Information Security 정보보안/System Security 시스템 보안

728x90

배울 내용: 

계정 및 패스워드 관리

허가권

SSH , TELNET

vi login.defs

issue.net 

원격 접속 서비스 설치

Xinetd

환경설정파일

해킹과 취약점  

 

 

 

제가 지금 부터 작성하는 모든글은 제가 공부기록용이기 때문에 정확하지 않을수 있음을 알려드립니다.

틀린게 있으면 댓글로 써주시면 고치겠습니다.

 

 

 

 

 

 

계정 및 패스워드 관리

 

이전에 계정관련파일을 봤었을때

 

/etc/passwd

/etc/shadow 

 

가 있는데 

 

 

 

 

 

 

 

젤 밑줄에 보면 user11 에 1008(GID) 하고 /home/user11(홈디럭터리) 사이에 

:: 빈공간이 있다 .여기는 설명하는 공간으로  이공간을 이번엔 채워볼것이다 

 

 

usermod -c sarimus user11

 

입력한다 

 

그리고 cat /etc/passwd 로 해서 보면

 

 

 

이렇게 설명칸에 sarimus가 넣어진걸 보여준다 

 

 

 

passwd에 2번째 비밀번호를 잘보면 x 로 되어있는데 이걸 풀어줄수도있다

 

 

pwuncov

를 입력하면 이제 passwd 에 x가아닌 해쉬함수가 섞인 비번이 보인다

 

 

이것은 곧 노출되면 다 crack 될수있다 

 

이제 다시 pwconv 로 x 로 표시 시켜주자 

 

 

 

 

참고로 애네들의 허가권은 이것이다 

 

 

- /etc/passwd
> 허가권 : 644

-/etc/shadow
> 허가권 :400


-/etc/group

 

 

 

이렇게만봐도 어떤게 좀더 보안이 강화 되어있는지 보인다. 

 

4가 r 로 READ 가 가능하고

2가 w 로 WRITE가 가능하고

1가 e 로 EXECUTE가 가능하다

 

 

 

 

 

이젠 vi login.defs 를 보자 

그리고 :se nu (see number)를 하면 번호로 볼수있다 

 

 

 

 

여기에서 사용자의 계정을 생성할때 여기를 참고해서 만든다 

여기값이 변경된후에 계정을 생성하면 아까 앞에서 보았던 필드값도 이전과 다를것이다

 

 


PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
PASS_MIN_LEN    5
PASS_WARN_AGE   7
UID_MIN                  1000
UID_MAX                 60000
SYS_UID_MIN               201
SYS_UID_MAX               999

 

여기만봐도 전에 보았던 숫자가 있다 

따로 표시하진않겠다 궁금하면 이전 포스팅을 보고 오도록한다

그래야 좀더 기억에 남을것같다. 

 

 

 

 

 

 

 

참고로 

계정 생성 시 암호 알고리즘을 변경가능한데 
ENCRYPT_METHOD MD5 이게 원래는 login.defs에서는 변경안되지만 아래와같이 변경가능
#authconfig --passalgo md5 --update

 

그뒤에 계정생성하면 바껴져있음 (shadow 확인해보면) 

 

 

 

 

 

 

 

 

 

자이젠 원격 접속시  root 사용자 접근제한 / 허용  대해서 알아보자

 

 

vm 에서 kali linux를 켜서 telnet 192.168.10.101 해보자 

 

이렇게 1번에 telnet [ip주소] 해서 연결하면된다 

2번엔 id 입력 3번엔 비번 , 이때 비번은 안보이지만 입력은 된다

 

 

안되면 연결되는곳에 telnet이 깔려있는지 봐야한다 

연결되는 곳에서 telnet [kali linux ip주소] 해보면 아무것도 안뜨면 설치해야한다

 

yum -y install telnet-server 

yum -y install telnet* 

 

해서 텔넷 서버와 텔넷에 관련된 모든걸 다운해준다 

그뒤 해보면 될것이다 

 

 

 


Telnet 은 Default: 차단

 

 허용되는 것은   
 - /etc/securetty 수정/추가 해주면된다
  pts/1  , pts/2 , pts3 (동시에 원격 접속가능한 최대인원수) 

 

 

 

 

 

 

 

 


<SSH>
Default : 허용


-/etc/ssh/sshd_config  에서 파일 수정하면된다 

참고로 ssh_config도 있는데 헷갈리지 않기!!

 

 

 


     38   #PermitRootLogin  yes ->   PermitRootLogin no  
이걸 주석제거하고  이렇게 no 바꿔주면 ! 

(default 가 아까 허용 이니깐 yes임 )

 

 

바꾼뒤에 systemctl restart sshd 해줘야함! 

 


kali에서 ssh -l root 192.168.10.101 해보면 root 가 안됨 
일반은 됨  그러나 default에서는 root 로그인 됨 

 

 

 

 

설정전  로그인 잘된다 

 

 

 

 

설정후  로그인 안된다 그대신 일반사용자들은 로그인됨!!

 

 

 

 

 

이거는 그냥 알고있으면 좋은데 

 만약 로그인시에 원하는 글 출력하고싶으면

vi /etc/issue.net  해서 넣고싶은거 넣고 원격접속하면 맨처음 알려주는창 수정가능 
(welcome to SariMus 올려보기! ) 

 

 

issue 도 있는데 이건 로컬에서 로그인시 ! 

원격에선 issue.net 을 고치면됨!

 

 

그렇게 되면 kali에서 로그인해버리면 저게보임

이런걸로 어디에서 어디로 들어왔는지 바로 알수있게 설정해준다 

왜냐면 기업에서는 나혼자만 서버를 운영하는게 아니라 여러사람이랑

운영하기때문에 어디가 어딘지 알아야하기때문에 나름 중요하다! 

 

 

 

그렇게 되면 kali 에서 로그인하면 이러케 보인다~! 

 

 

 

 

 

 

 

 

 

 

 

 

 

원격 접속 서비스 설치(xinetd)
#yum -y install xinetd

 

이렇게 해서 먼저 설치해주고 

 



> 환경 설정 파일 : /etc/xinetd.d/telnet
여기를 들어가서 


service telnet   :   telnet을 서비스를 만든다


disable = no :   disable에 no 로해야지 실행이됨


flag  = REUSE :   flag를 재사용할것인지 


socket_type = stream   :telnet이 TCP 를 이용하는 서비스가 stream이기떄문

만약 이게 UDP 라면 stream 대신 dgram 으로 들어감 (만약 :TFT 라면)

 
wait = no : 멀티 Thread를 사용할것인지 (no 이면 Multi 씀

접근이 되있는상태에서 다른사용자가 접근하면 사용가능하게하는 것 ) 

 

user = root  :  (접근하는 사용자 = root)


server = /usr/sbin/in.telnetd   :    (서버 지정 : (telnet의 데몬명)데몬이들어감) 


log_on_failure += USERID   : (로그인fail 있었을때 어떤 사용자가 실패했는지확인) 


이렇게 작성해주고  저장후 나가서 


#systemctl restart xinetd

 

 

재실행한다 ! 

파일이 없는것이니 직접 작성해줘야한다

 

 

 

 

 

 

 

 

 환경설정파일


-vi /etc/xinetd.conf

이게 슈퍼 데몬방식으로 작동됨  그러나 standalone 방식으로 쓰는것 뿐 

 


no access 에 윈도 ip 주소 넣고

 systemctl restart xinetd 한뒤에

 window에서 telnet 접속하면 안댐

 

 

 

저기 중간에 windowIP 있는부분에 window를 켜서 넣어준다

참고로 window에서도 telnet을 설정해줘야한다. 프로그램 추가/제거

에기에서 선택박스 있을것이다 텔넷 클라이언트 로 그거 클릭한뒤에 해보면된다 

그렇게 하면

 

 

이렇게 됬던게 

 

 

 

 

 

 

아무것도 안뜬다 만약 된다면 설정후에 systemctl restart xinetd 를 안해줬기때문일것이다 

 

 

 

 

 

 

추가적으로 

 

 

 

 

26~28번쨰 줄에 있는것들 


 26         cps             = 50 10 -> 동시접속자가 초당50개이상의 요청이들어오면 10초가 중지

(도스공격으로 판단하는것)


 27         instances       = 50    -> 동시에 50명 접속 허용 


 28         per_source      = 10    -> 하나의 ip에서 몇개의 클라이언트요청 허용하는지

 


 요즘엔 standalone 방식을 많이 쓴다는것 같다  

 

 

 

 

자 이제 아까 설정해줬던것들은 원래대로 돌려주도록하자 

안그래줘도 상관없다 왜냐면 나중에 문제가생기면 직접 생각해서 돌려주면 되기때문이다!~

 

 

 

 

하나하나 꼼꼼히 보도록 하자 ~! 

기초가 탄탄해야 나중에 한참 지났을때 무너지지 않는 엄청난 거대한 탑이 되지않겠어요~!?

 

 

 

그럼 20000

 

 

 

 

728x90