使用cilium/ebpf开发Android eBPF程序 最近捣鼓了一下在PC上开发Android的eBPF程序,最开始想用libbpf+bpftool,但是发现bpftool只支持linux,虽然生成skel.h头文件的功能是平台无关的,只是读取和解析文件而已。自己尝试一直了一下gen命令的代码,发现比较麻烦就放弃了,但因为平时主要用的还是Win和mac系统,总是切虚拟机里用linux太烦了,就找了下有没有别的方法,于是就有了写篇文章。流水账记录一下, 2022-12-21 #cilium #eBPF #Android #Windows #macOS
frida PC端与server通信方式 原来以为frida -U走的是啥USB协议,翻了一下源码发现不是。frida-server默认会在安卓上监听27042端口,PC 端会先连接这个端口,然后通过websocket协议协商出一个随机的端口用来做后面的通信。至于为啥要费这么大劲用ws来做通信我也没想明白。连接安卓端的端口并不是直接的TCP连接,而是连接本机的5037端口,这个端口是adb server的默认端口,然后用adb的协议命令来 2022-11-24 #frida #android
macOS 13 Ventura 修改hosts文件 shellM2芯片的笔记本升级macOS 13后发现无法修改hosts文件,过去直接sudo vim /etc/hosts就可以修改,升级之后修改了保存失败,禁用SIP或者进安全模式都没有作用。在升级macOS 13之前可以修改,而且intel芯片的笔记本升级了macOS 13修改也没问题,把我整郁闷了。最后问了一大顿终于找到了方法,其实很简单,只需要用chflags命令去掉文件的不可修改属性就 2022-11-19
ripgrep常用命令 最普通的,使用正则表达式在当前目录下搜索: 1rg 'regex' 关闭二进制检测,不跳过二进制文件,否则检测到文件中有0会跳过: 1rg 'regex' -a 指定文件编码,比如UTF-8,UTF-16,GBK等: 1rg 'regex' -E UTF-8 在压缩文件中搜索,遇到.zip、.tar.gz等压缩文件会在系统中寻 2022-10-13 #流水账 #ripgrep #rg
CEF49在网页上播放USB摄像头并截图 chromium 52才开始支持navigator.mediaDevices.getUserMedia()这个API,49也没有navigator.getUserMedia()这个接口,但是有个navigator.webkitGetUserMedia(),可以参考这里。首先来枚举所有的音视频设备: 1navigator.mediaDevices.enumerateDevices().then( 2020-07-17 #CEF #webkitGetUserMedia
支持XP和NPAPI的CEF51 主要特点: 支持windows xp sp2 支持NPAPI,用的是CEF最后一个还支持NPAPI的提交 支持无边框窗体(–hide-frame), 支持使用CSS-webkit-app-region: drag;指定拖拽区域 给CefDisplayHandler::OnConsoleMessage增加了日志等级 html5test检测支持的特性数量为485个,包括MP3和H.264支持,比c 2020-07-12 #CEF #XP #NPAPI
搞了个支持XP的Electron v1.1.3 注释掉了一些XP上没有的特性,DWM D3D11 蓝牙 MF和一些对话框API,然后用YY-Thunks打个补丁就可以运行了。目前还没做完整的测试,不过那些注释掉的特性基本上都不太需要。支持NPAPI还在折腾,现在虽然能加载NPAPI了,但是还有很多问题,有点头大。 2020-06-23 #electron
加上了gitalk的评论系统 给博客加上了评论,遇到了俩小坑,一个是OAuth App里的Homepage URL和Authorization callback URL两个url结尾要带上斜线;另一个是next主题的配置文件中gitalk.repo不是仓库的git路径,是仓库名。 2020-06-19 #流水账
第一篇文章 以前的域名到期了,重新申请了个,本来想用名字拼音.me来申请的,结果已经有人申请过了。 新博客用的hexo,主题next。 老博客内容都丢了,前几天去archive.org上下载了个存档,不过还是很多图没了,有时间整理下也放上来。 长时间不写markdown,语法格式都有点记不起来了。 部署的时候遇到了个坑,hexo deploy的时候把我的CNAME文件给删了,结果导致访问 https:// 2020-06-19 #流水账