AWS - SSM Privesc
SSM
Aby uzyskać więcej informacji na temat SSM, sprawdź:
AWS - EC2, EBS, ELB, SSM, VPC & VPN Enumssm:SendCommand
ssm:SendCommand
Atakujący posiadający uprawnienie ssm:SendCommand
może wykonywać polecenia na instancjach działających z agentem Amazon SSM i zagrozić roli IAM działającej wewnątrz niej.
W przypadku korzystania z tej techniki do eskalacji uprawnień wewnątrz już skompromitowanej instancji EC2, możesz po prostu przechwycić rev shell lokalnie za pomocą:
Potencjalny wpływ: Bezpośrednie podniesienie uprawnień do ról IAM EC2 przypisanych do uruchomionych instancji z działającymi agentami SSM.
ssm:StartSession
ssm:StartSession
Atakujący posiadający uprawnienia ssm:StartSession
może rozpocząć sesję podobną do SSH na instancjach działających z agentem Amazon SSM i naruszyć rolę IAM działającą wewnątrz niej.
Aby rozpocząć sesję, musisz zainstalować SessionManagerPlugin: https://docs.aws.amazon.com/systems-manager/latest/userguide/install-plugin-macos-overview.html
Potencjalny wpływ: Bezpośrednie podniesienie uprawnień do ról IAM EC2 przypisanych do uruchomionych instancji z działającymi agentami SSM.
Podniesienie uprawnień do ECS
Kiedy zadania ECS są uruchamiane z włączonym ExecuteCommand
, użytkownicy z wystarczającymi uprawnieniami mogą użyć ecs execute-command
do wykonania polecenia wewnątrz kontenera.
Zgodnie z dokumentacją jest to realizowane poprzez utworzenie bezpiecznego kanału między urządzeniem, z którego rozpoczynasz polecenie „exec“, a docelowym kontenerem z menedżerem sesji SSM. (Wymagany jest plugin menedżera sesji SSM Session Manager)
Dlatego użytkownicy posiadający ssm:StartSession
będą mogli uzyskać powłokę wewnątrz zadań ECS z tą opcją włączoną, uruchamiając po prostu:
Potencjalne skutki: Bezpośrednie podniesienie uprawnień do ról ECS
IAM przypisanych do uruchomionych zadań z włączoną opcją ExecuteCommand
.
ssm:ResumeSession
ssm:ResumeSession
Atakujący posiadający uprawnienia ssm:ResumeSession
może ponownie uruchomić sesję przypominającą SSH na instancjach działających z agentem Amazon SSM w stanie rozłączonej sesji SSM i zagrozić roli IAM działającej wewnątrz niej.
Potencjalne skutki: Bezpośrednie podniesienie uprawnień do ról IAM EC2 przypisanych do uruchomionych instancji z działającymi agentami SSM i rozłączonymi sesjami.
ssm:DescribeParameters
, (ssm:GetParameter
| ssm:GetParameters
)
ssm:DescribeParameters
, (ssm:GetParameter
| ssm:GetParameters
)Atakujący posiadający wymienione uprawnienia będzie mógł wyświetlać parametry SSM i odczytywać je w formie zwykłego tekstu. W tych parametrach często można znaleźć poufne informacje takie jak klucze SSH lub klucze API.
Potencjalne skutki: Znalezienie wrażliwych informacji wewnątrz parametrów.
ssm:ListCommands
ssm:ListCommands
Atakujący posiadający to uprawnienie może wyświetlić wszystkie polecenia wysłane i mieć nadzieję znaleźć na nich wrażliwe informacje.
Potencjalne skutki: Znalezienie wrażliwych informacji w wierszach poleceń.
ssm:GetCommandInvocation
, (ssm:ListCommandInvocations
| ssm:ListCommands
)
ssm:GetCommandInvocation
, (ssm:ListCommandInvocations
| ssm:ListCommands
)Atakujący posiadający te uprawnienia może wyświetlić wszystkie wysłane polecenia i odczytać generowany wynik, miejmy nadzieję znajdując na nim wrażliwe informacje.
Potencjalne skutki: Znalezienie wrażliwych informacji w wynikach poleceń.
Codebuild
Możesz również użyć SSM, aby uzyskać dostęp do projektu codebuild w trakcie budowy:
AWS - Codebuild PrivescLast updated