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 |