Android逆向(1):APK文件结构、基础修改
APK文件结构
APK全程Android Package,相当于一个压缩文件。以压缩包的形式打开一个APK可以看到他的结构:
文件
描述
kotlin
使用kotlin编写的Android应用时携带的库
META-INF
保存应用的签名信息,用于验证应用完整性
okhttp3
一个依赖包
res
存放app前端用到的一些图形组件库,一些情况下APP会将证书放在里面的raw目录底下
assets
存放app的资源文件,通常存放图片之类的静态资源,有时候会存放app的证书,一些仅由HTML5封装的app,其前端代码也会存放在该文件夹下
AndroidManifest.xml
APK的应用清单,描述了应用的名字、版本、权限、引用的库文件等信息
classes.dex
java源码编译后的java字节码文件,应用运行的主要逻辑
resources.arsc
编译后的二进制资源文件,为一个映射表
汉化
流程图
现在我们的示例app里面有一个需要我们汉化的地方
现在我们用第一种方法:我们使用NP管理器,打开APK,搜索hello
通过这种方式 ...
SQL注入判断数据库类型
基于报错信息判断
如果注入点对报错信息直接进行返回的话,我们可以通过他返回的报错信息判断得到数据库的类型,以下为不完全列举,具体可以直接把报错语句丢到搜索引擎或AI查询
MySQL错误信息
1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near...
SQL Server错误信息
123Incorrect syntax near...或Unclosed quotation mark after the character string...
还会出现类似于
1错误[42000]:在应使用条件的上下文(在'iamasb'附近)中指定了非布尔类型的表达式
Oracle错误信息
1ORA-00933: SQL command not properly ended
PostgreSQL错误信息
1ERROR: syntax error at or near...
...
CobaltStrike流量特征
原文与图片来源:https://www.ddosi.org/cobaltstrike/
基础特征(修改profile/证书可隐藏)
http请求
http-beacon通信中,在默认profile文件的情况下,会使用get方法向/ca /dpixel /__utm.gif等地址发起请求,同时会存在cookie字段、其值为base64编码后的非对称算法加密数据。
1234567891011121314151617181920212223# default c2-http profile# define indicators for an HTTP GEThttp-get { # Beacon will randomly choose from this pool of URIs set uri "/ca /dpixel /__utm.gif /pixel.gif /g.pixel /dot.gif /updates.rss /fwlink /cm /cx /pixel /match /visit.js /load /push /ptj /j.ad /ga. ...
渗透+应急靶机:vulntarget-m
靶机拓扑图及配置
靶机配置:https://mp.weixin.qq.com/s?__biz=Mzg3NDYwNjQyMw==&mid=2247490554&idx=1&sn=4405de5d10e421cf7d0ed51e2e298eb4&scene=21#wechat_redirect
入口机1
尝试获取立足点
通过fscan扫描发现一个nacos网页和两个nacos漏洞
URLDNS反序列化利用链
URLDNS
URLDNS为ysoserial工具中的一条反序列化利用链,一般用于检测是否存在反序列化漏洞。
该利用链有以下特点:
不限制JDK版本,不使用第三方依赖
只能发起DNS请求,不能进行其他利用,只能验证是否存在反序列化
ysoserial源码中列出的利用链为如下
12345* Gadget Chain: * HashMap.readObject() * HashMap.putVal() * HashMap.hash() * URL.hashCode()
其调用链为:Deserializer.deserialize() -> HashMap.readObject() -> HashMap.putVal() -> HashMap.hash() -> URL.hashCode() -> getHostAddress()
最终通过getHostAddress()发出dns请求。
参考:
告别脚本小子系列丨JAVA安全(6)——反序列化利用链(上) - FreeBuf网络安全行业门户
Ja ...
/etc/docker/deamon.json文件修改后重启Docker服务不生效解决方案
环境
Ubuntu22.04 LTS
Docker Engine Community Version 28.1.0
问题介绍
参照了网上众多教程配置Docker daemon.json文件,基本都是一种方法
12345sudo mkdir -p /etc/dockersudo vim /etc/docker/daemon.json// 修改相关配置文件sudo systemctl daemon-reload && sudo systemctl restart docker
都是修改配置文件后,重载daemon和重启docker服务。以前使用这种方法是没问题,不知道为什么最近用相同的方法已经无法使用了,使用docker info查看Mirrors之类的配置也是为空
1sudo docker info|grep Mirrors -A 1
解决方案
在折磨了我解决一个小时之后,我在网上找到了一篇解决方案
【踩坑】Docker deamon.json 文件修改之后重启不生效_docker daemon.json 不生效-CSDN博客
总而言之就是,直接重启没用了,首先要停止 ...
Fastjson RCE漏洞
Fastjson漏洞
判断是否使用Fastjson
本次测试以vulhub提供的版本1.2.24和1.2.45为例
单{报错
123456POST / HTTP/1.1Host: 192.168.200.130:8090Content-Type: application/jsonContent-Length: 385\u007B
在1.2.24版本,使用非闭合的{会导致500报错
12345678910111213HTTP/1.1 500Content-Type: application/jsonDate: Sun, 20 Apr 2025 14:01:08 GMTConnection: closeContent-Length: 161{ "timestamp": 1745157668563, "status": 500, "error": "Internal Server Error", "message": "syntax erro ...
HVV面试题
国誉2024初筛
用过什么安全设备
给你一个登录框,可能有什么漏洞
sql注入、xss、csrf、会话劫持
sql注入的类型
字符、布尔、报错、时间盲注、联合、堆叠、宽字节、XFF
错误注入使用的方法有哪些
extractValue、updateXml、floor
宽字节注入的编码格式是什么
GBK
时间盲注不能使用工具或者脚本,怎么样注入较快
尝试外带查询
优化查询策略采用二分查找法
简化数据集
sqlmap的level和risk有什么区别,level各个等级代表什么意思
–level和–risk是数字愈大级别越高,–level有1-5,–risk有1-3
level侧重点在于注入点。risk侧重点在于注入的方法和攻击者愿意承担的风险。
level默认等级会测试get和post请求中的参数。level2会测cookie。level3会测ua和refferer。level4-5会测各种payload和边界条件。
risk默认等级安全第一,风险低,只测默认的几种注入方法。risk2会尝试更多类型的注入,如时间盲注等。risk3会尝试更多方式的注入,有可能会更新数据库 ...
常见webshell的流量特征
菜刀流量特征
静态特征
菜刀用的是一句话木马,特征很明显
123PHP: <?php @eval([$_post['hacker']]); ?>ASP: <% eval request("hacker")%>ASP.NET: <%@ Page Language="Javascript"%><% eval(Request.Item["hacker"],"unsafe");%>
动态特征
payload在请求体中,采用url编码+base64编码,payload部分是明文传输;
payload中有eval或assert、base64_decode这样的字符;
payload中有默认固定的&z0=QGluaV9zZXQ…这样base64加密的攻击载荷,参数z0对应$_POST[z0]接收到的数据,且固定为QGluaV9zZXQ开头。
进行base64解码后可看到代码:@ini_set(“display_errors”,“ ...
smb利用-vulnhub靶机WestWild v1.1
下载地址:https://www.vulnhub.com/entry/westwild-11,338/
用netdiscover扫描本网段的存活主机
确定机子为VMware的主机,ip为192.168.31.89
端口扫描
tcp端口扫描
详细信息扫描
访问网页
没什么信息,源码里也什么都没有。
目录爆破
既然没东西,那还是目录爆破一下,看看有什么可用目录
一个没有权限,一个是网站主页,没有价值。
smb共享(445端口)
在详细信息扫描那里,我们看到了靶机开启了SMB服务,也就是存在共享文件
我们用enum4linux枚举一下用户和共享文件夹
可能为空密码,且存在一个wave的文件夹,直接用smbclient访问
还真没密码啊?
应该是什么编码,解码一下
base64解码得到用户名密码和flag1
提权
用上面得到的用户名密码通过ssh连接
这个用户看起来并没有提权到root的权限,我们来看看这个用户有什么有写权限的文件
使用下面这个命令我们可以查到
1find / -perm 0777 -type f 2>/dev/null
直接执行一下这个.s ...