OSCP/도구 개념 정리

psexec, winexe(linux버전)

우와해커 2020. 7. 7. 10:28

PSExec 유틸리티는 원격 시스템에 몇 가지 사항이 필요합니다. SMB (서버 메시지 블록) 서비스를 사용할 수 있고 연결할 수 있어야합니다 (예 : 방화벽에 의해 차단되지 않아야 함). 파일 및 인쇄 공유를 활성화해야합니다. 및 단순 파일 공유를 비활성화해야합니다.

Admin$ 공유가 사용 가능하고 액세스 가능해야합니다. Windows 디렉터리에 매핑되는 숨겨진 SMB 공유는 소프트웨어 배포를위한 것입니다. PSExec 유틸리티에 제공된 자격 증명에는 Admin$ 공유에 액세스 할 수있는 권한이 있어야합니다.

PSExec에는 실행 파일 내에 Windows 서비스 이미지가 있습니다. 이 서비스를 가져와 원격 시스템의 Admin$ 공유에 배포합니다. 그런 다음 SMB를 통한 DCE / RPC 인터페이스를 사용하여 Windows 서비스 제어 관리자 API에 액세스합니다. 원격 컴퓨터에서 PSExec 서비스를 켭니다. 그런 다음 PSExec 서비스는 시스템에 명령을 보내는 데 사용할 수있는 명명 된 파이프를 만듭니다.

 

 

 

원격으로 pc를 제어하는 프로그램에 여러가지가 있지만, 대부분 클라이언트 pc에 프로그램을 설치해야하는 불편함이 있다. Pxexec 는 cmd 로 원격제어를 할 수 있는 경량 원격 제어 프로그램이다.
원격으로 정해진 시간에 프로그램을 제어하고 프로그램을 실행시킬 수 있다. 서버 패치 자동화 같은 경우에 사용하기도 한다.

 

설치

다운로드 링크 : https://docs.microsoft.com/en-us/sysinternals/downloads/psexec 에 들어가서 설치할 수 있다.

 

압축을 해제하고 PSTools 폴더를 C:\Windows\System32 디렉토리에 복사한다.

 

Psexec를 사용하기 위해 다음과 같은 설정을 확인해야 한다.

  1. target pc 에서 PIC$ , ADMIN$ 시스템 기본을 포함하는지 확인한다.
  2. UAC 가 꺼져있는지 확인한다.
  3. TCP 445 포트를 사용해야 하므로 해당 포트가 오픈되어 있는지 확인한다

cmd 창에서 net share 명령어를 입력하고 IPC$ , ADMIN$를 확인한다.

https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_UAC_%EB%81%84%EA%B8%B0 링크를 통해 UAC 끄는 법을 참고한다.

 

그리고 다음 명령어를 관리자권한으로 실행하여 TCP 445 포트를 Open할 수 있다.

netsh advfirewall firewall add rule name="TCP-445" dir=in action=allow protocol=tcp localport=445

 

이제 원격 cmd 창을 띄운다.

 

원격 pc 를 제어하기 위해서는 target pc 의 user name, password, ip 번호 가 필요하다.

 

다음 명령을 통해 원격 pc에 cmd 창이 띄워지는 것을 확인할 수 있다.

PsExec.exe -u [user name] -p [password] [ip] cmd

 

링크:https://tuna3cott.tistory.com/entry/Psexec-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95