全部 文章 问答 分享 共找到14个相关内容
[文章] AOSP Android 10定制su名字隐藏root
//img-blog.csdnimg.cn/img_convert/d5eca0babfd5a1beb2cc4d8d887b1641.jpeg)(title-Android改机系列AOSP10定制隐藏su
2023-02-19 21:33 · AOSP源码定制 / Android10 / root / su / Android
[文章] Android13user版本默认打开adb root和apk root
PRODUCT_PACKAGES+=\system_manifest.xml\system_compatibility_matrix.xml\++#swladd+PRODUCT_PACKAGES+=\+su
2023-03-09 11:56 · framework / 安卓源码
[问答] Android 9.0用代码给指定目录权限
exec方法体我分别试了/system/xbin/susu 都是同样的现象。
2021-06-01 11:35 · su执行失败
[文章] Android某app环境检测分析
检测是不是安装了supersu的APP,检测su文件是否存在。
2023-12-01 15:27 · Android / Android逆向 / 环境检测 / 风控
[文章] Android改机系列Pixel3上车Kernel SU
背景让Pixel3AOSPAndroid104.9内核用上KernelSU喜欢看视频的戳这里:观众姥爷来个关注来个点赞吧Android改机系列Pixel3上车KernelSU_哔哩哔哩_bilibili原文:http://www.debuglive.cn/article/1091666763961073664公众号:https://mp.weixin.qq.com/s/G8rBb31YaOF8qxeoxsC92g公众号2:https://mp.weixin.qq.com/s/7OQ0PtKFTUQbffP5S78PIA环境:Ubuntu18.04vmaosp10r2内核下载和编译查看之前的文章文章Android逆向技术33——(源码定制)AOSPAndroid10内核编译刷入Pixel3(qq.com)视频Android改机系列AOSP10Pixel3内核编译_哔哩哔哩_bilibili移植参考官方,和github项目Commits·OnlyTomInSecond/android_kernel_xiaomi_sdm845(github.com)这个项目是LineageOS/android_kernel_xiaomi_sdm845编译的前提已经有完整的AOSP编译环境,且成功编译并刷机的。下载内核代码,我选择的是qpr1的android-msm-crosshatch-4.9-android10-qpr1--depth=1具体怎么下载内核代码,看上面的文章,这里不再细说。下载好的目录结构是这样的。要成功编译一次下载好的内核,在移植kernelsu。到这里假设你已经成功编译,且刷入手机正常使用。开始移植kernelsukernelsu的官方网站:Android上的内核级的root方案|KernelSUpixel3内核支持最高版本是4.9,kernelsu目前不支持这个版本,需要我们手动移植。KernelSU可以被集成到非GKI内核中,现在它最低支持到内核4.14版本;理论上也可以支持更低的版本。首先,把KernelSU添加到你的内核源码树,在内核的根目录执行以下命令:curl-LSs"https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh"|bash-根据文档的描述,在内核的根目录执行以下命令那么哪里是内核的根目录呢?进入msm-google之后(全球通上网)执行aosp@ubuntu:~/aosp/kernel/private/msm-google$curl-LSs"https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh"|bash-++pwd+GKI_ROOT=/home/aosp/aosp/kernel/private/msm-google+echo'[+]GKI_ROOT:/home/aosp/aosp/kernel/private/msm-google'[+]GKI_ROOT:/home/aosp/aosp/kernel/private/msm-google+test-d/home/aosp/aosp/kernel/private/msm-google/common/drivers+test-d/home/aosp/aosp/kernel/private/msm-google/drivers+DRIVER_DIR=/home/aosp/aosp/kernel/private/msm-google/drivers+test-d/home/aosp/aosp/kernel/private/msm-google/KernelSU+gitclonehttps://github.com/tiann/KernelSUCloninginto'KernelSU'...remote:Enumeratingobjects:11090,done.remote:Countingobjects:100%(940/940),done.remote:Compressingobjects:100%(373/373),done.remote:Total11090(delta565),reused877(delta514),pack-reused10150Receivingobjects:100%(11090/11090),8.80MiB|2.34MiB/s,done.Resolvingdeltas:100%(5740/5740),done.+cd/home/aosp/aosp/kernel/private/msm-google/KernelSU+gitstashNolocalchangestosave+gitpullAlreadyuptodate.+cd/home/aosp/aosp/kernel/private/msm-google+echo'[+]GKI_ROOT:/home/aosp/aosp/kernel/private/msm-google'[+]GKI_ROOT:/home/aosp/aosp/kernel/private/msm-google+echo'[+]Copykernelsudriverto/home/aosp/aosp/kernel/private/msm-google/drivers'[+]Copykernelsudriverto/home/aosp/aosp/kernel/private/msm-google/drivers+test-e/home/aosp/aosp/kernel/private/msm-google/drivers/kernelsu+ln-sf/home/aosp/aosp/kernel/private/msm-google/KernelSU/kernel/home/aosp/aosp/kernel/private/msm-google/drivers/kernelsu+echo'[+]AddkernelsudrivertoMakefile'[+]AddkernelsudrivertoMakefile+DRIVER_MAKEFILE=/home/aosp/aosp/kernel/private/msm-google/drivers/Makefile+grep-qkernelsu/home/aosp/aosp/kernel/private/msm-google/drivers/Makefile+printf'\nobj-y+=kernelsu/\n'+echo'[+]Done.'[+]Done.aosp@ubuntu:~/aosp/kernel/private/msm-google$这样就下载好代码。手动修改内核源码全部修改的位置kernel\private\msm-google\arch\arm64\configs\b1c1_defconfigkernel\private\msm-google\fs\exec.ckernel\private\msm-google\fs\read_write.ckernel\private\msm-google\fs\open.ckernel\private\msm-google\drivers\input\input.c打开kprobepixel3的内核配置文件在\192.168.216.133\aosp\aosp\kernel\private\msm-google\arch\arm64\configs\\192.168.216.133\aosp\aosp\kernel\private\msm-google\arch\arm64\configs\b1c1_defconfig这个路径用文本编辑器打开b1c1_defconfig增加以下配置,如果配置已经存在,不用重复添加CONFIG_KPROBES=yCONFIG_HAVE_KPROBES=yCONFIG_KPROBE_EVENTS=y\192.168.216.133\aosp\aosp\kernel\private\msm-google\fs\exec.c1673行//addcodestartexternintksu_handle_execveat(int*fd,structfilename**filename_ptr,void*argv,void*envp,int*flags);//addcodeend/**sys_execve()executesanewprogram.*/staticintdo_execveat_common(intfd,structfilename*filename,structuser_arg_ptrargv,structuser_arg_ptrenvp,intflags){char*pathbuf=NULL;structlinux_binprm*bprm;structfile*file;structfiles_struct*displaced;intretval;//addcodeksu_handle_execveat(&fd,&filename,&argv,&envp,&flags);//addcodeendif(IS_ERR(filename))returnPTR_ERR(filename);\192.168.216.133\aosp\aosp\kernel\private\msm-google\fs\read_write.c//addcodestartexternintksu_handle_vfs_read(structfile**file_ptr,char__user**buf_ptr,size_t*count_ptr,loff_t**pos);//addcodeendssize_tvfs_read(structfile*file,char__user*buf,size_tcount,loff_t*pos){ssize_tret;//addcodestartksu_handle_vfs_read(&file,&buf,&count,&pos);//addcodeendif(!(file->f_mode&FMODE_READ))return-EBADF;\192.168.216.133\aosp\aosp\kernel\private\msm-google\fs\open.c357行//addcodestartexternintksu_handle_faccessat(int*dfd,constchar__user**filename_user,int*mode,int*flags);//addcodeend/**access()needstousetherealuid/gid,nottheeffectiveuid/gid.*WedothisbytemporarilyclearingallFS-relatedcapabilitiesand*switchingthefsuid/fsgidaroundtotherealones.*/SYSCALL_DEFINE3(faccessat,int,dfd,constchar__user*,filename,int,mode){conststructcred*old_cred;structcred*override_cred;structpathpath;structinode*inode;structvfsmount*mnt;intres;unsignedintlookup_flags=LOOKUP_FOLLOW;//addcodeksu_handle_faccessat(&dfd,&filename,&mode,NULL);//addcodeendif(mode&~S_IRWXO)/*where'sF_OK,X_OK,W_OK,R_OK?*/return-EINVAL;\192.168.216.133\aosp\aosp\kernel\private\msm-google\drivers\input\input.c368行//addcodeexternintksu_handle_input_handle_event(unsignedint*type,unsignedint*code,int*value);//addcodeendstaticvoidinput_handle_event(structinput_dev*dev,unsignedinttype,unsignedintcode,intvalue){intdisposition=input_get_disposition(dev,type,code,&value);//addcodeksu_handle_input_handle_event(&type,&code,&value);//addcodeendif(disposition!=INPUT_IGNORE_EVENT&&type!=EV_SYN)add_input_randomness(type,code,value);开始编译,载入编译源码环境#aosp源码目录下sourcebuild/envsetup.shlunch3#切换到内核目录./build/build.sh利用aosp环境重新生成boot,使用自编译的内核#aosp源码目录下exportTARGET_PREBUILT_KERNEL=/home/aosp/aosp/kernel/out/android-msm-pixel-4.9/dist/Image.lz4makebootimage编译成功后,把产物中的ko文件推送到手机中,再刷入新的boot。adbroot##关闭验证adbdisable-verity##重启手机adbreboot##重启机器成功之后:adbrootadbremount-R在内核目录下执行adbpushout/android-msm-pixel-4.9/dist/*.ko/vendor/lib/modules重启手机到bootloaderadbrebootbootloader进入aosp的产品目录下我的位置是aosp/out/target/product/blueline##烧入新内核fastbootflashbootboot.img查看内核:λadbshelldipper:/#cat/proc/versionLinuxversion4.9.185_KernelSU-g726f44b-dirty(build-user@build-host)(Android(5484270basedonr353983c)clangversion9.0.3(https://android.googlesource.com/toolchain/clang745b335211bb9eadfa6aa6301f84715cee4b37c5)(https://android.googlesource.com/toolchain/llvm60cf23e54e46c807513f7a36d0a7b777920b5881)(basedonLLVM9.0.3svn))#1SMPPREEMPTTueMar2814:27:58UTC2023dipper:/#新编译的内核信息,在内核out/android-msm-pixel-4.9/dist下执行grep-a'Linuxversion'Image.lz4验证是否可以用,安装管理器。最后再次感谢Commits·OnlyTomInSecond/android_kernel_xiaomi_sdm845(github.com)希望大家编译永不报错,写代码冇bug。
2023-04-01 10:22 · KernelSU / Kernel / root / Android / Pixel3
[文章] 隐私合规检测工具Camille
push到手机目录中adbpush本地frida-server文件路径/data/local/tmp/(4)进入安卓手机adbshellsu如果显示$的,代表shell,但是我们需要Root的权限,输入su
2023-04-25 15:08 · y / 隐私检测 / 工具 / Android
[文章] Android开发测试常用的ADB命令
我们输入su这样就可以了。
2020-05-10 00:52 · ADB / 安卓开发 / android / 命令 / 调试桥
[文章] Linux配置ssh免密
[root@192.168.70.160~]#su-ncayu[ncayu@192.168.70.160~]$pwd/home/ncayu然后在192.168.70.160上生成密钥对[ncayu@192.168.70.160
2021-11-27 23:34 · Linux
[文章] Android的生态现状
通过上面方式,我知道了他的位置,进入shell,su,进入系统app/private中删除了apk,重启,问题就解决了。
2022-07-26 10:27 · Android / Android软件生态 / 流氓软件
[文章] Ubuntu 18.04编译AOSP 10.0r41刷入pixel3
源码根目录输入:sourcebuild/envsetup.sh回车lunch回车我们的手机pixel3就选择blueline这个产品,userdebug模式刷机完成就打开adb调试,有su
2022-11-22 21:08 · Ubuntu / AOSP / Android / 刷机 / pixel3
[文章] Centos7命令行安装Oracle11g
src/17.关闭selinuxvim/etc/selinux/config#修改SELINUX=disabled18.重启机器暂时不方便重新启动机器的,可以不重启reboot19.进入Oracle用户su-oracle20
2022-06-26 14:20 · 运维 / 数据库
[文章] 学习笔记-Python
#content=browser.page_source#print(content)#定位元素#################eg_btn=browser.find_element_by_id('su
2021-12-26 21:26 · Python / 笔记
[文章] Android 一条Log引发的性能问题--Profiler查看CPU调度
mNxTAOHlVB97LgSuYZqkhp3ZAY7a3Oqa+Kukc0/lFfwuois4/WH0z6ewYkCZ0H4YQWbBfsL73epokYyZ3s5czzCfnH+StT8GNSegB4/K9yIEaAfnQgCV9R9d3p/8SU67XLmuWGBIAURZ4xAjjmiU4flft6dPNn1yCoON
2021-11-14 17:41 · Android / 性能优化 / Log / 断点
  • 1