<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_35993502的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/qq_35993502</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qq_35993502]]></copyright><item><title><![CDATA[NVIDIA显卡驱动及CUDA的安装]]></title><link>https://blog.csdn.net/qq_35993502/article/details/158572651</link><guid>https://blog.csdn.net/qq_35993502/article/details/158572651</guid><author>qq_35993502</author><pubDate>Mon, 02 Mar 2026 13:49:44 +0800</pubDate><description><![CDATA[本文介绍了在Windows和WSL环境下安装NVIDIA显卡驱动及CUDA的详细步骤。主要内容包括：1) Windows环境下通过官网下载并安装显卡驱动，使用nvidia-smi验证安装；2) 根据显卡架构和算力选择合适的CUDA版本并安装，使用nvcc --version验证；3) WSL环境下验证显卡驱动后，按照官方指南安装CUDA。文章提供了具体操作命令和注意事项，帮助用户在不同系统环境中完成NVIDIA驱动和CUDA工具包的配置。]]></description><category></category></item><item><title><![CDATA[Android framework强制修改系统属性]]></title><link>https://blog.csdn.net/qq_35993502/article/details/154838381</link><guid>https://blog.csdn.net/qq_35993502/article/details/154838381</guid><author>qq_35993502</author><pubDate>Fri, 14 Nov 2025 20:20:17 +0800</pubDate><description><![CDATA[本文分析了修改Android系统ro只读属性的权限问题及解决方案。通过SystemProperties.set()方法修改属性时会遇到SELinux权限限制和只读属性无法更新的问题。作者从源码层面追踪了属性设置流程：从Java层的SystemProperties类到native层的__system_property_set函数，最终通过socket与init进程通信实现属性修改。本文为系统开发者提供了深入理解Android属性机制的思路，并指出了修改系统属性的关键限制点。]]></description><category></category></item><item><title><![CDATA[LineageOS 22系统编译流程概述]]></title><link>https://blog.csdn.net/qq_35993502/article/details/153043700</link><guid>https://blog.csdn.net/qq_35993502/article/details/153043700</guid><author>qq_35993502</author><pubDate>Tue, 14 Oct 2025 11:20:22 +0800</pubDate><description><![CDATA[本文详细记录了在虚拟机环境下编译LineageOS 22系统到Google Pixel 3设备的过程。主要内容包括：1）硬件配置要求（16G内存建议配置48G虚拟内存）；2）环境搭建（Android SDK、编译依赖、JDK、repo等）；3）使用清华镜像源拉取系统源码；4）提取设备专用blob文件；5）编译过程中的注意事项（内存不足处理）；6）刷机流程及常见错误解决方案（如webview.apk缺失问题）。针对国内网络环境，文章特别提供了镜像源替代方案和优化建议，适合想要自行编译LineageOS的中级用]]></description><category></category></item><item><title><![CDATA[编译tun2socks用于Android项目]]></title><link>https://blog.csdn.net/qq_35993502/article/details/137840430</link><guid>https://blog.csdn.net/qq_35993502/article/details/137840430</guid><author>qq_35993502</author><pubDate>Sun, 25 May 2025 20:41:05 +0800</pubDate><description><![CDATA[本文介绍了在Android端实现基于socks5协议网络流量转发的完整流程。首先配置Go开发环境并安装必要依赖，然后通过git下载tun2socks项目并完成编译。接着详细说明了在Android Studio中的集成步骤，包括如何将编译生成的aar文件导入项目。最后提供了关键代码示例，展示如何建立VPN连接并配置socks5代理参数来启动流量转发功能。整个过程涵盖了从环境搭建到实际使用的完整链条，为开发者实现类似功能提供了清晰的参考指南。
]]></description><category></category></item><item><title><![CDATA[Android framework C/C++中打印堆栈]]></title><link>https://blog.csdn.net/qq_35993502/article/details/138715363</link><guid>https://blog.csdn.net/qq_35993502/article/details/138715363</guid><author>qq_35993502</author><pubDate>Sat, 11 May 2024 20:02:29 +0800</pubDate><description><![CDATA[有时候我们需要有这样的需求，需要在某些函数中打印函数的调用路径，经过查询主要有四种方式实现。]]></description><category></category></item><item><title><![CDATA[Android AOSP 编译vendor.img]]></title><link>https://blog.csdn.net/qq_35993502/article/details/130240967</link><guid>https://blog.csdn.net/qq_35993502/article/details/130240967</guid><author>qq_35993502</author><pubDate>Wed, 19 Apr 2023 22:23:13 +0800</pubDate><description><![CDATA[AOSP源码中的vendor.img文件，并不是由我们自己编译出来的，而是Google已编译好了的vendor.img文件，在编译AOSP源码时，会将vendor.img文件复制到目录下。若我们有修改等需求，那么需要解包后再重新编译vendor.img文件。]]></description><category></category></item><item><title><![CDATA[Android AOSP内置GMS服务]]></title><link>https://blog.csdn.net/qq_35993502/article/details/129967123</link><guid>https://blog.csdn.net/qq_35993502/article/details/129967123</guid><author>qq_35993502</author><pubDate>Thu, 06 Apr 2023 11:16:10 +0800</pubDate><description><![CDATA[在Android源代码中加入GMS，安装等相关应用，使AOSP系统用起来更加顺滑。]]></description><category></category></item><item><title><![CDATA[自定义fingerprint特征]]></title><link>https://blog.csdn.net/qq_35993502/article/details/125835107</link><guid>https://blog.csdn.net/qq_35993502/article/details/125835107</guid><author>qq_35993502</author><pubDate>Sun, 17 Jul 2022 20:22:59 +0800</pubDate><description><![CDATA[在Android源代码中自定义fingerprint特征，由于AOSP的fingerprint特征会被某些应用检测为不安全的系统环境，所以需要修改fingerprint值模拟正常的环境]]></description><category></category></item><item><title><![CDATA[DEX文件解析 - method_ids解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/124266168</link><guid>https://blog.csdn.net/qq_35993502/article/details/124266168</guid><author>qq_35993502</author><pubDate>Sun, 26 Jun 2022 11:08:34 +0800</pubDate><description><![CDATA[在上一篇中介绍了field_ids的解析，那么接下来就要学习method_ids的解析。在android的aosp源码中，method_ids的结构如下：
aosp源码位置：art/libdexfile/dex/dex_file.h


从的结构可以看出以下几点：]]></description><category></category></item><item><title><![CDATA[Android升级WebView浏览器内核版本]]></title><link>https://blog.csdn.net/qq_35993502/article/details/125094948</link><guid>https://blog.csdn.net/qq_35993502/article/details/125094948</guid><author>qq_35993502</author><pubDate>Thu, 02 Jun 2022 11:01:44 +0800</pubDate><description><![CDATA[使用项目编译的系统，会发现在部分使用系统自带的浏览器内核来加载网页时会出现报错，加载不出网页的情况，其实这是由于自带的所导致的，只要更新成比较新的浏览器内核版本就行了。（1） Android系统源码编译环境（Android9.0）(1). ，这里下载非beta版本，beta版本有可能会不稳定，这里我下载的是版本的
(2). 下载的过程比较麻烦，还要进行，和，在文章后面会附上已经下载好了的较为新的（下载下来后其实是一个apk文件）,我要编译的是架构的系统，故下载对应版本的文件
(1). 在路径下替换和架构的文]]></description><category></category></item><item><title><![CDATA[DEX文件解析 - field_ids解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/123906889</link><guid>https://blog.csdn.net/qq_35993502/article/details/123906889</guid><author>qq_35993502</author><pubDate>Mon, 11 Apr 2022 11:19:35 +0800</pubDate><description><![CDATA[在上一篇中介绍了proto_ids的解析，那么接下来就要学习field_ids的解析。
1. field_ids结构

]]></description><category></category></item><item><title><![CDATA[DEX文件解析 - proto_ids解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/123592621</link><guid>https://blog.csdn.net/qq_35993502/article/details/123592621</guid><author>qq_35993502</author><pubDate>Sun, 20 Mar 2022 22:56:10 +0800</pubDate><description><![CDATA[在上一篇中介绍了type_ids的解析，那么接下来就要学习proto_ids的解析。

]]></description><category></category></item><item><title><![CDATA[DEX文件解析 - type_ids解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/123591592</link><guid>https://blog.csdn.net/qq_35993502/article/details/123591592</guid><author>qq_35993502</author><pubDate>Sat, 19 Mar 2022 12:23:21 +0800</pubDate><description><![CDATA[在上一篇中介绍了string_ids的解析，那么接下来就要学习type_ids的解析。
1. type_ids结构
在android的aosp源码中，type_ids的结构如下：
aosp源码位置：art/libdexfile/dex/dex_file.h
TypeId
 // Raw type_id_item.
  struct TypeId {
    dex::StringIndex descriptor_idx_;  // index into string_ids

   private:
   ]]></description><category></category></item><item><title><![CDATA[DEX文件解析 - string_ids解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/123265193</link><guid>https://blog.csdn.net/qq_35993502/article/details/123265193</guid><author>qq_35993502</author><pubDate>Sat, 05 Mar 2022 08:30:00 +0800</pubDate><description><![CDATA[DEX文件解析 - string_ids解析
在上一篇中介绍了header的解析，那么接下来就要学习string_ids的解析。
1. string_ids结构
在android的aosp源码中，string_ids的结构如下：
aosp源码位置：art/libdexfile/dex/dex_file.h
  // Raw string_id_item.
  struct StringId {
  	uint32_t string_data_off_;  // offset in bytes from th]]></description><category></category></item><item><title><![CDATA[DEX文件解析 -header解析]]></title><link>https://blog.csdn.net/qq_35993502/article/details/122791608</link><guid>https://blog.csdn.net/qq_35993502/article/details/122791608</guid><author>qq_35993502</author><pubDate>Wed, 02 Mar 2022 01:05:24 +0800</pubDate><description><![CDATA[DEX文件解析 - header解析
熟悉DEX文件格式有助于我们提高安全和逆向的技术水平，对于DEX文件格式一定要熟悉，因为它是一个基础知识，日后对学习加固、脱壳有很好的帮助。
1. DEX格式整体认知
首先我们要对DEX的大致格式（宏观上）要有认知，用如下图片进行说明：

图片中DEX分成了9大块，其中：
header：DEX文件头
string_ids：字符串索引列表
type_ids：类型索引列表
proto_ids：方法原型/声明索引列表
field_ids：字段索引列表
method_ids：方]]></description><category></category></item><item><title><![CDATA[Android自动更新时间&去除WIFI无法连接互联网提示]]></title><link>https://blog.csdn.net/qq_35993502/article/details/123126262</link><guid>https://blog.csdn.net/qq_35993502/article/details/123126262</guid><author>qq_35993502</author><pubDate>Fri, 25 Feb 2022 11:19:05 +0800</pubDate><description><![CDATA[使用AOSP项目编译的Android系统，由于一些网络问题导致手机无法自动更新时间，在连接WIFI时也可以看到无法连接互联网的提示。
一、环境准备
（1） Android系统源码编译环境（Android9.0）
二、解决方案
在网上可以看到，大致有两种解决方案：
（1）使用adb修改服务器地址
（2）修改源代码修改服务器地址
使用adb修改服务器地址
#去除WIFI'无法连接互联网'提示
adb shell settings put global captive_portal_https_url https]]></description><category></category></item><item><title><![CDATA[Android安全检测 - Janus签名漏洞]]></title><link>https://blog.csdn.net/qq_35993502/article/details/122159276</link><guid>https://blog.csdn.net/qq_35993502/article/details/122159276</guid><author>qq_35993502</author><pubDate>Sat, 05 Feb 2022 16:35:22 +0800</pubDate><description><![CDATA[前言
这一章来说说Janus签名漏洞，网上关于这个漏洞的介绍几位详细，其中的原理均为其它地方进行摘录，那么我主要做的就是POC测试，在文章末尾也会给出相应的样本，当然样本就是自己做的，用真实的上线项目来做这个也不合适，想找真实的项目来练练手的话推荐找2017年12月之前的项目（学习可以，但不要在网上发布不当的东西）
一、漏洞原理
基本概述
Google在2017年12月份披露了一个名为“Janus”的安全漏洞（漏洞编号：CVE-2017-13156），该漏洞可以让攻击者绕过安卓的签名校验机制（signatu]]></description><category></category></item><item><title><![CDATA[Android安全检测－WebView File域同源策略绕过漏洞]]></title><link>https://blog.csdn.net/qq_35993502/article/details/121371049</link><guid>https://blog.csdn.net/qq_35993502/article/details/121371049</guid><author>qq_35993502</author><pubDate>Mon, 22 Nov 2021 18:39:21 +0800</pubDate><description><![CDATA[这一章我们来学习“WebView File域同源策略绕过漏洞”。
一、漏洞原理

]]></description><category></category></item><item><title><![CDATA[Android安全检测－Intent Scheme URLs攻击风险]]></title><link>https://blog.csdn.net/qq_35993502/article/details/121350724</link><guid>https://blog.csdn.net/qq_35993502/article/details/121350724</guid><author>qq_35993502</author><pubDate>Tue, 16 Nov 2021 16:58:16 +0800</pubDate><description><![CDATA[这一章我们来学习“Intent Scheme URLs攻击风险”，网上的文章关于这个风险的介绍可谓是千篇一律，翻阅下来之后发现内容大致相同，单看这些文章的介绍仍然让人感觉到云里雾里，故此篇文章中会讲清楚这风险的产生和应对方法。
一、漏洞原理
利用intent scheme URLs(意图协议URL)，可以通过web页面发送intent来启动App应用。攻击者可构造特殊格式的URL直接向系统发送意图，启动App应用的Activity组件或者发送异常数据，导致应用的敏感信息泄露或者应用崩溃。
上述的漏洞描述中可]]></description><category></category></item><item><title><![CDATA[Android安全检测－Content Provider SQL注入风险]]></title><link>https://blog.csdn.net/qq_35993502/article/details/120927086</link><guid>https://blog.csdn.net/qq_35993502/article/details/120927086</guid><author>qq_35993502</author><pubDate>Wed, 27 Oct 2021 19:24:43 +0800</pubDate><description><![CDATA[这一章我们来学习“ content provider SQL注入风险”。
漏洞原理
首先，我们需要知道的是来自用户的输入都是不安全的，我们需要对其进行校验，当校验通过时我们可以近似的认为是安全，那这与我们这一章有什么关系呢，其实SQL注入的发生就是源于用户的不规范输入所导致的（当然若发生了注入情况这也是程序本身的问题），若在程序中未校验用户输入的SQL条件，用户就可以构造一些SQL命令，那么就会导致SQL注入的发生。content provider SQL注入漏洞产生的因如下：

content provi]]></description><category></category></item></channel></rss>