본문 바로가기

보안/기초

Bind shell 과 Reverse shell

Bind shell vs reverse shell

 해당 공격은 거의 똑같은 공격이지만 딱 하나의 차이로 분명하게 나눠진다.

바로 누가 누구에 컴퓨터에 접속을 했냐이다.

정확하게 말하자면 누가 포트를 열었는지 라고 볼수도 있다

 

방화벽은 신뢰 할 수 있는 내부 네트워크가 신뢰 할수 없는 외부 네트워크 간의 장벽을 형성한다.

그래서 방화벽의 역할에 보안에서 아주 중요하다.

Bind shell

 

보통 방화벽이 제대로 작동을 한다면

( 방화벽은 Target의 방화벽이다)

타겟 컴퓨터에 열려 있지 않는 포트로 접속 혹은 데이터를 보내려고 할때  타겟 컴퓨터에서 작동하는 방화벽이

못 들어오게 막을 것이다.

하지만 타겟의 어떠한 취약점을 이용해서 열려있지않는 포트를 열게 만들거나 이미 있는 포트를 악용을 해서 

공격자가 타겟에 접속을 하는  방식이다

방화벽이라는 큰 벽이 있기 때문에 bind shell은 여간 쉬운 일이 아니다.

 

Reverse shell

 

reverse 라는 뜻 그대로 거꾸로 방법이 바뀐다

오히려 공격자가 3232포트를 열어 놓고 타겟이 공격자에게 접속을 하는 방식이다.

마치 무장해제를 하고 적진에 터벅터벅 걸어가는 것인 느낌이다.

 

이런 방식이 가능한 이유는 방화벽이 보통 outbound 즉 외부에서 오는것들에게는 민감한데

inbound 즉 내부에서 외부로 나가는것에 대해는 outbound에 비해 널널하다.

그래서 리버스 쉘을 이용하면 방화벽을 뚫기가 비교적 쉽다.

 

 

 

반응형

'보안 > 기초' 카테고리의 다른 글

Error based SQL injection  (0) 2024.01.13
TCP vs UDP  (0) 2023.11.14
3 way handshake 와 nmap으로 실습!  (1) 2023.10.11
bruteforce란 무엇이고 파이썬으로 구현 해보자!  (0) 2023.06.13
TTPs  (0) 2023.03.04