개요

 

들어가기에 앞서서

원격코드란?!!
인증 자격없는 공격자, 루트권한으로 임의 코드 실행

관리자가 시스템장악을했다 (해커에게 시스템을 뺐겼다?)
해커가 이겼다=> 접근차단 , 시스템을 내리던지 패치를빨리하는수밖에
방법이 없다.

해커가 암호없이 관리자 권한을 얻는 방법
=>원격코드 실행

컴퓨터에 대한 구조 이해

 

데몬,서비스  => 시스템 프로세스(공무원) => 관리자,root(중요)

 

Windows에서는 서비스, Linux에서는 데몬으로 부른다.

 

이둘의 차이점은 무엇인가?

Window의 Service
프로세스와 서비스 1:1 관계가 아니다. 즉, 한 프로세스에서 둘 이상의 서비스를 실행할 수 있다.
실행 파일 뿐만 아니라 dll도 서비스로 구동된다

서비스 < 프로세스


Linux의 Daemon
daemon == background process
둘 이상의 데몬이 한 프로세스 밑에서 동작하는 경우는 없다
실행 파일만 데몬으로 구동된다.

컴퓨터의 대한 구조 이해 2

 

데몬 = 프로세스



커널(국가)=운영체제(OS)



하드웨어

 

 

본문

 

우리가 컴퓨터를 통제하는 방법

 

컴퓨터(월드)가 있다고 생각해보자


1.로그인을한다.
2.또다른나(아바타..캐릭터)가 존재 컴퓨터에서 나를대신하는 무언가가 존재함
바로 프로세스
3.프로세스는 키보드와 마우스로 통제함
4.OS라는 영역 커널, 데몬,서비스 등등 하드위에 안
5.시스템 프로세스마다 권한이라는 개념이 있음
6.화면(GUI){id,pw를입력해야함} => 로그인프로세스(중요한역할을함,,"이걸통과를해야함")
=>어떠한 프로세스를 하나 실행시켜줌(Shell 이라는 형태를 띄고있음=탐색기,bash)
7.프로세스마다 권한이 있는데 로그인프로세스가 쉘에 관리자권한을 부여함
8.차일드에게 쉘에서 명령을함(즉, 권한을 상속함)

권한부여,상속,명령을 통해 시스템프로세스를 통제할 수 있게된다.

 

그렇다면 원격코드는 어떻게 얻는걸까?

한가지 예시를 들어보자

 

롯데월드(자유이용권) 권한을 부여받음
지나가는 꼬맹이가 아저씨 자유이용권 저 주면안돼요?
권한을 들고 자유이용권을 사진않았지만 권한을 얻은것으로됌.

 

로직

 

시스템 데몬

Samba 프로세스 =시스템프로세스(관리자권한을 가지고있음)

프로세스(관리자권한을 가지고있다.)


해커는 프로세스에 정보를 주입을함


이정보를가지고 오작동! 하게 만듬

주입을 당한 시스템프로세스들은 시키지도 않은 짓들을 함

즉 ,무언가들을 실행하도록 유도함

주입=>프로세스에서 오작동 되도록 유도=>쉘프로세스 실행

이렇게 해커는 쉘이라는걸 실행을하게되면(관리자권한 가진) 모든걸 통제할 수 있게 됀다.
즉, 관리자권한을 가진 쉘을 통제하기때문에 시스템을 장악했다는 뜻이됀다.

이걸 막기위한 노력들

1.관리자권한을 가지는 프로세스생성을 제한

2.OS 수준에서 모니터링 실행이 허용된게 아니라면 차단시킴(OS Secure)

3.마을 유니버스 시네마틱 예시


원격코드실행이라고 봐도되는


윈터솔져
정신이멀쩡한 윈터솔져=>책을 읽음 => 세뇌당함
프로세스 제어를 배우는데

권한얘기가 딸려나오는데 바로 여기나오는 권한이야기이다.

 

출처:

https://www.youtube.com/watch?v=ZrNp9Be83qQ

 

 

 

 

 

 

 

 

복사했습니다!