关于IMDShift
功能介绍
1、在各种服务中检测依赖元数据节点的AWS工作负载,包括EC2、ECS、EKS、Lightsail、AutoScaling Groups、Sagemaker Notebooks、Beanstalk(正在开发中); 2、提供了简单直观的命令行界面,易于使用; 3、支持将所有工作负载自动迁移到IMDSv2; 4、为兼容资源设置了独立的跳点限制更新; 5、为兼容资源启用独立元数据节点操作; 6、提供了迁移过程的详细日志记录; 7、使用了MetadataNoToken识别使用了IMDSv1的资源; 8、内置服务控制策略(SCP)建议;
工具安装
生产环境安装
git clone https://github.com/ayushpriya10/imdshift.git
cd imdshift/
python3 -m pip install .
(向右滑动,查看更多)
开发环境安装
git clone https://github.com/ayushpriya10/imdshift.git
cd imdshift/
python3 -m pip install -e .
(向右滑动,查看更多)
工具参数选项
--services TEXT:该参数可以从下列环境中扫描出使用了IMDSv1的工作负载实例:EC2, Sagemaker、ASG、Lightsail、ECS、EKS、Beanstalk;命令格式: "--services EC2,Sagemaker,ASG";
--include-regions TEXT:该案明确指定要扫描IMDSv1使用情况的区域范围;命令格式: "--include-regions ap-south-1,ap-southeast-1";
--exclude-regions TEXT:该参数明确指定要从扫描中排除的区域;命令格式: "--exclude-regions ap-south-1,ap-southeast-1";
--migrate:这个布尔参数可以控制IMDShift是否要执行迁移任务,默认为“False”;命令格式: "--migrate"
--update-hop-limit INTEGER:该参数指定是否应更新跃点限制以及更新值。建议将跃点限制设置为“2”,以使容器能够使用IMDS节点。如果未传递此参数,则迁移期间不会更新跃点限制;命令格式: "--update-hop-limit 3";
--enable-imds:这个布尔参数可以让IMDShift启用资源元数据节点查看,并执行迁移操作;命令格式: "--enable-imds";
--profile TEXT:该参数允许我们使用任意配置文件,路径为 ~/.aws/credentials file;命令格式: "--profile prod-env";
--role-arn TEXT:这个参数可以通过AWS STS声明一个用户角色;命令格式: "--role-arn arn:aws:sts::111111111:role/John";
--print-scps:这个布尔参数用于控制打印可以控制IMDS使用的SCP,默认为“False”;命令格式: "--print-scps";
--check-imds-usage:这个布尔参数可以启动一次扫描以识别过去30天内在指定区域中有多少个实例使用了IMDSv1,默认为“False”;命令格式: "--check-imds-usage";
--help:显示工具帮助信息和退出;
(向右滑动,查看更多)
工具运行截图
许可证协议
本项目的开发与发布遵循GPL-3.0开源许可证协议。
项目地址
IMDShift:https://github.com/ayushpriya10/IMDShift
【FreeBuf粉丝交流群招新啦!
在这里,拓宽网安边界
甲方安全建设干货;
乙方最新技术理念;
全球最新的网络安全资讯;
群内不定期开启各种抽奖活动;
FreeBuf盲盒、大象公仔......
扫码添加小蜜蜂微信回复“加群”,申请加入群聊】
https://github.com/salesforce/metabadger
原文始发于微信公众号(FreeBuf):如何使用IMDShift提升AWS工作负载的安全性
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论