感谢アヤメ师傅投稿
水平不精,翻译能力和语言能力有限,看看就好
书的出处我不知道,是别人发给我的,感谢作者NETMUX.COM
,作者推特账号地址@NETMUX
、@bsdbandit
、@carnal0wnage
、@marcusjcarey
、@blenster
、@jaysonstreet
这本书很早就到手了,师傅@json
他之前说要翻译,后来时间不太够,就没有翻译出来,我翻译了一下(馋它太久了),但是奈何我能力在那里,大家看看就好
这里要感谢提供支持的朋友和师傅RabbitQ
、F。
、春夏秋兮
、Gone
、Corn
、契阔
、然宝
,翻译真下头
应该算连载吧,没人看的话就不更了
A
安卓
Android Debug Bridge (adb) 是一个通用的命令行工具,让您与设备进行通信。adb 命令有助于各种设备操作,例如安装和调试应用程序,它提供对 Unix shell 的访问,您可以使用它来运行设备上的各种命令
adb devices 列表连接设备
adb root用root权限重启adbs
adb start-server 开始adb的服务
adb reboot 重启设备
adb devices -l 设备列表,产品/型号
adb shell 开启后台终端
exit 退出后台终端
adb help 列出所有的命令
adb -s <设备名> <命令> 将命令重定向到特定设备
adb -d <命令> 将命令定向到仅连接的 USB 设备
adb -e <命令> 将命令定向到仅附加模拟器
adb shell install <apk文件> 下载app
adb shell install <路径> 下载app到指定的手机目录
adb shell install -r <路径> 从指定路径下载app
adb shell uninstall <名称> 卸载某个名称的app
路径
/data/data/<package>/databases app的数据库
/data/data/<package>/shared_prefs/ 共享偏好
/data/app哪个用户下载的
/system/app 预装的apk文件
/mmt/asec加密的app
/mmt/emmc 内置SD卡
/mmt/adcard外置/内置SD卡
/mmt/adcard/external_sd 外置SD卡
adb shell ls 列出目录内容
adb shell ls -s列出目录并打印出每个文件的大小
adb shell ls -R 递归列出
文件操作
adb push <当前路径的文件/目录> <其他路径> 将文件目录移动过去
adb push <其他路径的文件/目录> <当前路径> 将其他路径的文件或者目录移动过来
run-as <包> cat <文件> 访问私有包文件
手机信息
`adb -get-stat-u` 打印设备状态
`adb get-serialno` 获取序列号数字
`adb shell dumpsys iphonesybinfo` 获取IMEI
`adb shell netstat` 获取tcp连接
`adb shell pwd` 打印当前路径
`adb shell dumpsys battery` 获取电池状态
`adb shell pm list features` 列出电话功能
`adb shell service list` 列出所有服务
`adb shell dumpsys activity <package>/<activity>` 活动信息
`adb shell ps` 打印进程信息
`adb shell wm size` 显示当前屏幕分辨率
`dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'` 打印当前app的打开的活动
包信息
`adb shell list packages` 打印出包名
`adb shell list packages -r` 打印出包名和apk文件路径
`adb shell list packages -3` 列出第三方包名
`adb shell list packages -s` 只列出系统包
`adb shell list packages -u` 列出包名和未下载的
`adb shell dumpsys package packages` 列出所有app的信息
`adb shell dump <名称>` 列出这个包的信息
`adb shell path <包>` 这个apk文件的路径
配置设置
`adb shell dumpsys battery set level <级别>` 改变级别(0到100)
`adb shell dumpsys battery set status<级别>` 改变为未知级别
`adb shell dumpsys battery reset` 重置电池
`adb shell dumpsys battery set usb <ON/OFF>` 修改usb连接状态
`adb shell wm size WxH` 设置分辨率到WxH
设备相关CMDS
`adb reboot-recovery` 重启设备到恢复模式(recovery mode,应该是出厂模式?)
`adb reboot fastboot` 重启设备到恢复模式
`adb shell screencap -p "/path/to/screenshot.png"` 截屏
`adb shell screenrecord "/path/to/record.mp4"` 录屏
`adb backup -apk -all -f backup.ab` 备份设置和apps
`adb backup -apk -shared -all -f backup.ab` 备份设置
`adb backup -apk -nosystem -all -f backup.ab` 仅备份非系统应用
`adb restore backup.ab` 恢复以前的备份
`adb shell am start|startservice|broadcast <intent>[<component>] -a <action>` 开始活动意图//不知道怎么翻译,过梅纳塞
`adb shell am start -a android.intent.action.VIEW -d url` 访问网站
`adb shell am start -t image/* -a android.intent.action.VIEW` 打开相册
日志
`adb logcat [参数] [筛选] [筛选]` 查看设备日志
`adb bugreport` 打印bug日志
权限
`adb shell permissions groups` 列出权限组
`adb shell list permissions -g -r` 列出权限信息
安卓资源
`AVC UnDroid在线分析`:http://undroid.av-comparatives.info/
`提交可疑的文件进行分析,限定128M`:https://www.virustotal.com/
`上传你的安卓文件并免费得到评估`:https://appcritique.boozallen.com/
`免费的安卓恶意软件分析服务。裸机服务为Android应用程序提供静态和动态分析。一种MalwarePot 的产品`:https://amaaas.com/
`提取apk`:https://m.apkpure.com/
其他链接:
https://github.com/ashishb/android-security-awesome
https://github.com/anitaa1990/Android-Cheat-sheet
https://github.com/tanprathan/MobileApp-Pentest-Cheatsheet
安卓分析工具链接
https://github.com/ginigangadharan/ansible-cheat-sheet
https://0x00sec.org/t/a-blue-team-guide-to-aws-cloudtrail-monitoring/15086
https://docs.aws.amazon.com/vpc/latest/mirroring/traffic-mirroring-filter.html#create-traffic-mirroring-filter
aws_terms
aws_IoT
aws iot是一种托管云服务,可让连接的设备轻松、安全地与云应用程序和其他设备交互 证书管理器:aws提供了非常简单的证书管理器,条款、管理和部署安全套接字层/传输层安全 (SSL/TLS) 证书以供使用 云端:Amazon CloudFront 提供了一种以低延迟和高数据传输速度向最终用户分发内容的方法。 云搜索:AWS CloudSearch 是一项完全托管的搜索服务,用于网站和应用程序 云轨迹:AWS CloudTrail 通过记录对您的账户进行的 API 调用,提高了对用户活动的可见性
详情:https://www.northeastern.edu/graduate/blog/aws-terminology/
下载链接:https://github.com/eon01/AWS-CheatSheet
使用
★
子网
”
-
创建子网
aws ec2 create-subnet --vpc-id <vpc_id> --cidr-block <cidr_block> --availability-zone <availability_zone> --region <region>
-
自动为公共子网中的实例分配公共 IP
aws ec2 modify-subnet-attribute --subnet-id <subnet_id> --map-public-ip-on-launch --region <region>
★
vpc
”
-
创建vpc
aws ec2 create-vpc --cidr-block <cidr_block> --regiosn <region>
★
NAT
”
-
允许dns主机名
aws ec2 modify-vpc-attribute --vpc-id <vpc_id> --enable-dns-hostnames "{"Value":true}" --region <region>
-
设置nat网关
-
允许弹性ip
aws ec2 allocate-address --domain vpc --region <region>
-
AllocationId 为公共区域创建 NAT 网关
aws ec2 create-nat-gateway --subnet-id <subnet_id> --allocation-id <allocation_id> --region <region>
★
S3 API
”
-
只监听存储桶名
aws s3api list-buckets --query 'Buckets[].Name'
-
获取存储桶地区
aws s3api get-bucket-location --bucket <bucket_name>
-
将本地文件夹与存储桶同步
aws s3 sync <local_path> s3://<bucket_name>
-
复制文件夹
aws s3 cp <folder_name>/ s3://<bucket_name>/ --recursive
-
从复制中排除文件
aws s3 cp <folder_name>/ s3://<bucket_name>/ --recursive --exclude "<file_name_or_a_wildcard_extension>"
-
从复制中排除文件夹
aws s3 cp example.com/ s3://example-backup/ --recursive --exclude ".git/*"
-
从存储桶里边移除文件
aws s3 rm s3://<bucket_name>/<file_name>
-
删除存储桶
aws s3 rb s3://<bucket_name> --force
-
清空桶
aws s3 rm s3://<bucket_name>/<key_name> --recursive
LAMBDA
-
使用aws Lamdba预定活动
sid=Sid$(date +%Y%m%d%H%M%S); aws lambda add-permission --statement-id $sid --action 'lambda:InvokeFunction' --principal events.amazonaws.com --source-arn arn:aws:events:<region>:<arn>:rule/AWSLambdaBasicExecutionRole --function-name function:<awsents> --region <region>
-
删除未使用的卷
for x in $(aws ec2 describe-volumes --filters
Name=status,Values=available --profile <your_profile_name>|grep VolumeId|awk '{print $2}' | tr ',|"' ' '); do aws ec2 delete-volume --region <region> --volume-id $x; done
-
profile
for x in $(aws ec2 describe-volumes --filters
Name=status,Values=available --profile <your_profile_name>|grep VolumeId|awk '{print $2}' | tr ',|"' ' '); do aws ec2 delete-volume --region <region> --volume-id $x --profile <your_profile_name>; done
AZURE_EXPLOIT
红队
★
AZURE本地创建的文件/文件夹
”
TokenCache.dat
是一个包含AccessKey
的明文文件,注入到用户的进程去查看文件内容C:User<username>.AzureTokenCache.dat
★
powershell Azure 模块下载
”
-
指示目标用户已经下载Azure模块
C:Program FileswindowsPowerShellModulesAz.*
C:Users<username>DocumentsWindowsPowerShellModulesAz.*
C:Windowssystem32windowsPowerShellv1.0ModulesAz.*
-
搜索
Save-AzContent
用法和文件位置PS> Get-PSReadLineOption
PS> Select-String -Path <pathtoConsoleHost_history.txt>
Pattern 'Save-AzContent'
-
Azure Token "CachedData:" Key Inside "TokenCache:" .JSON File
#Base64 Encoded Data; Decode it to recreate TokenCache.dat file
-
导入加密
TokenCache.dat
进入攻击者本地PowerShell
一旦导入攻击者,将不会提示输入用户/密码PS> Import-AzContext -Path C:pathtodecoded_TokenCache.dat
MICROBURST
设想:你已经能够为 Azure AD(所有者或参与者)的特权用户获取凭据,你现在可以定位这个用户可能通过获取存储在 Key Vault、应用服务配置、自动化帐户和存储帐户。
步骤一:下载powershell
模块和下载/导入Microburst
通过NetSPI
Install-Module -Name AzureRM
Install-Module -Name Azure
项目地址:https://github.com/NetSPI/MicroBurst
Import-Module .Get-AzurePasswords.ps1
步骤二:现在powershell模块已经被导入,我们可以执行它一次从 Key Vault 中检索所有可用的凭据,应用服务配置、自动化帐户和存储账户,系统将提示输入用户账号,证书和订阅,通过输出管道保存到csv文件
Get-AzurePasswords -Verbose | Export-CSV
POWERZURE
powerzure
是一个旨在帮助评估 Azure 安全性的powershell脚本,函数被分解为它们的上下文以及运行它们所需的角色
函数 | 描述 | 角色 |
---|---|---|
PowerZure -h | 显示帮助菜单 | any |
MANDATORY | ||
Set-Subscription | 将操作设置默认下表 | Reader |
OPERATIONAL | ||
Create-Backdoor | 创建操作手册并创建Azure账户、生成一个webhook到操作手册 | admin |
Execute-Backdoor | 执行创建了的后门"Create-Backdoor",需要从生成的 URI 创建后门 | admin |
Execute-Command | 在指定的VM里执行命令 | Contributor |
Execute-MSBuild | 在特定的vm里执行MSBuild的payload,默认Azure VMs拥有.NET 4.0已下载,作为system用户运行 | Contributor |
Execute-Program | 执行提供的程序 | Contributor |
Upload-StrorageContent | 上传提供的文件去存储分享 | Contributor |
Stop-VM | 停止VM | Contributor |
Start-VM | 启动VM | Contributor |
Restart-VM | 重启VM | Contributor |
Start-Runbook | 开启具体的操作手册 | Contributor |
Set-Role | 给具体的用户设置角色在特定资源或订阅 | Owner |
Remove-Role | 在角色中删除用户资源或者订阅 | Owner |
Set-Group | 添加用户到组 | admin |
信息搜集 | ||
Get-CurrentUser | 返回当前登录的用户名,他们由角色+组和任何的拥有者项目 | Reader |
Ger-AllUsers | 在订阅中列出所有用户 | Reader |
Get-User | 列出具体用户信息 | Reader |
Get-AllGroups | 在AzureAD中列出所有的用户组和信息 | Reader |
Get-Resources | 列出订阅的所有资源 | Reader |
Get-Apps | 在订阅中列出所有的应用 | Reader |
Get-GroupMembers | 获取具体组的所有用户,用户组不代表角色 | Reader |
Get-AllGroupMembers | 聚集所有组的所有成员 | Reader |
Get-AllRoleMembers | 获取成员的所有角色,角色不代表用户组 | Reader |
Get-Roles | 列出订阅所有的角色 | Reader |
Get-RoleMembers | 获取成员的角色 | Reader |
Get-Sps | 返回所有主要的服务 | Reader |
Get-Sp | 返回所有指定服务的主要信息 | Reader |
Get-AppPermissions | 返回app的权限 | Reader |
Get-Apps | 获取所有应用和他们的id | Reader |
Get-WebApps | 获取运行中的webapp | Reader |
Get-WebAppDetails | 获取运行的webapps细节 | Reader |
秘密搜集 | ||
Get-KeyVaults | 列出所有密钥库 | Reader |
Get-KeyVaultContents | 从特定 Key Vault 获取机密 | Contributor |
Get-AllKeyVaultContents | 获取所有密钥库 | Contributor |
Get-AppSecrets | 获取密钥库的所有机密 | Contributor |
Get-AllAppSecrets | 如果无障碍将返回所有的应用密码以及证书凭据 | Contributor |
Get-AllSecrets | 从所有 Key Vault 和应用程序中获取所有 | Contributor |
Get-AutomationCredentials | 从任意自动化帐户获取凭据 | Contributor |
数据外泄 | ||
Get-StorageAccounts | 获取所有存储帐户 | Reader |
Get-StorageAccountKeys | 获取存储帐户的帐户密钥 | Reader |
Get-StorageContents | 获取文件共享的存储容器的内容 | Reader |
Get-Runbooks | 列出所有运行手册 | Reader |
Get-RunbookContent | 读取特定运行手册里的内容 | Reader |
Get-AvailableVMDisks | 列出所有可用的vm磁盘 | Reader |
Get-VMDisk | 生成下载虚拟机磁盘的链接。该链接仅可用一小时 | Contributor |
Get-VMs | 列出所有可用的VM | Reader |
链接:https://github.com/hausec/PowerZure https://blog.netspi.com/attacking-azure-with-custom-script-extensions/
https://github.com/puresec/awesome-serverless-security/#azure-functions-security
https://posts.specterops.io/attacking-azure-azure-ad-and-introducing-powerzure-ca70b330511a
https://github.com/mattrotlevi/lava
https://blog.netspi.com/get-azurepasswords/
https://www.lares.com/hunting-azure-admins-for-vertical-escalation
蓝队
https://www.cloudconformity.com/knowledge-base/azure/
★
免责声明由于传播、利用本公众号李白你好所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号李白你好及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
”
end
网络¥安全联盟站—李白你好
欢迎关注[李白你好]-文章内容涉及网络¥安全,web渗透测试、内网安全、二进制安全、工业控制安全、APP逆向、CTF、SRC等。
微信:libaisec
微信交流群:加我微信拉你进群和工程师们学技术聊人生
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论