对使用系统调用进行收发包的frida hook抓包

VSole2021-09-12 17:59:00

目标:请编写frida脚本,完成对该app通信的抓包

 先部署环境,将局域网段改为192.168.5.x,再将一台主机的ip固定为192.168.5.150。

在该主机上运行服务器端程序server.exe。

 在手机上装上目标apk,打开后,就会在服务器端差不多每隔5秒收到一个请求。

 现在就是要用frida脚本抓取这个包。

目标app有360的壳:

 

脱完壳后发现类的内容还是不完全,其中的方法都显示为native,可能是用到了vmp。

 

那就去native层看看,这里加载的库为libnative-lib.so。用ida打开apk中直接解压出来的so会报各种解析错误。

打开后发现大段的代码段都没有解析成代码,识别出来的函数也特别少。特别是没有Java层中看到的stringFromJNI函数。可能文件内容被加密处理过。

 

用frida dump 出运行时内存中的libnative-lib.so。

 

再次用ida打开dump得到的so,发现内容正常很多,且识别出了stringFromJNI。

尝试用frida hook libc的sendto和recvfrom方法,没有得到任何信息。于是猜测可能直接用了系统调用进行消息的发送和接收。

 

用课上的脚本,在内存中搜索000000ef

并hook所有系统调用指令”SVC #0”

对于sendto和recvfrom系统调用,打印出消息的内容:

发现这样就可以hook到由sendto发送的请求:

 

以及recvfrom接收的响应:

系统调用recvfrom
本作品采用《CC 协议》,转载必须注明作者和本文链接
目标:请编写frida脚本,完成对该app通信的抓包
利用wirkeshake抓包初步分析配置本地PC的ip为192.168.5.150并在上面运行server,然后在pixel手机上安装client_连接192.168.5.150服务器.apk,手机ip为192.168.5.221,在PC上通过wireshake进行抓包。如下所示,看到No.14是手机发给server的HTTP GET包,No.17为server发给手机的HTTP报文。
Seccomp BPF与容器安全
2022-07-17 10:07:03
本文详细介绍了关于seccomp的相关概念,包括seccomp的发展历史、Seccomp BPF的实现原理以及与seccomp相关的一些工具等。此外,通过实例验证了如何使用seccomp bpf 来保护Docker的安全。
大厂基本为了程序的安全,会使用大量内联SVC去调用系统函数,以此来保护程序的安全。如何实现SVC指令的IO重定向,成为最大的问题。内核态是当Linux需要处理文件,或者进行中断IO等操作的时候就会进入内核态。当arm系列cpu发现svc指令的时候,就会陷入中断,简称0x80中断。
也防止有人通过inlinehook 直接hook recv ,recvform,recvmsg 直接在收到数据包的时候被拦截和替换掉。
概述最近 fodcha 僵尸网络泛滥。fodcha 是最近新发现的快速传播型 DDos 僵尸网络,由于使用 chacha 算法加密网络流量,360 将其命名为 Fodcha[2]。该恶意软件支持多种架构,包括 x86,arm,mips 等。
API(Application Programming Interface),我们调用时只需提供正确的参数以及接收返回值就可以判断API执行是否成功或者通过GetLastError获得错误原因.
《中华人民共和国数据安全法》于2021年9月1日正式实施,在国家强化数据安全监管的大形势下,所有企事业单位将面临着数据安全如何合规合法这一问题。本文试图站在操作系统角度初步提出数据安全中基于元数据重构的数据标签解决途径。
目前绝大部分app都会频繁的使用syscall去获取设备指纹和做一些反调试,使用常规方式过反调试已经非常困难了,使用内存搜索svc指令已经不能满足需求了,开始学习了一下通过ptrace/ptrace配合seccomp来解决svc反调试难定位难绕过等问题。seccompLinux 2.6.12中的导入了第一个版本的seccomp,通过向/proc/PID/seccomp接口中写入“1”来启动通过滤器只支持几个函数。BPF程序由一组BPF指令组成,可以在系统调用执行之前对其进行检查,以决定是否允许执行该系统调用
通过分析APT攻击中部署的恶意软件,为我们进行APT攻击研究提供了一种可行的方法
VSole
网络安全专家