当前位置: 首页 > news >正文

网站空间制作扁平化网站 源代码

网站空间制作,扁平化网站 源代码,网络工程师证书含金量,聚兴大宗商品交易平台前述 在网上有看到许多android安全sdk相关的内容#xff0c;有重复的也有比较新鲜的内容#xff0c;这里做一个整体的合集#xff0c;以及后续又看到一些比较新的东西会一起放在这里。 android内sdk目前可以分为以下几个部分#xff08;有一些部分可能会存在一些重合#…前述 在网上有看到许多android安全sdk相关的内容有重复的也有比较新鲜的内容这里做一个整体的合集以及后续又看到一些比较新的东西会一起放在这里。 android内sdk目前可以分为以下几个部分有一些部分可能会存在一些重合——设备指纹root相关环境检测模拟器特征改机软件 设备指纹 1.android_id google给的app唯一id存放在/data/system/users/0/settings_ssaid.xml文件中只有在文件存储位置处修改设备重刷或设备恢复出厂设置等时候才会被修改。可以用Settings.Global.getString() 、Settings.Secure.getString()、Settings.System.getString()来获取(根据/data/system/users/0/下的文件名字推测可用这些方法获取该目录下一些文件的内容) 2.drmid(设备媒体id) media drm的设备id同时和app包名以及签名有关即不同包名或者不同签名drmid会不一样可以视为另外一个android_id缺点是还和包名有关注意极少数机型上获取该id的过程存在崩溃且google也在逐渐的废除该id,可参考https://developer.android.com/identity/user-data-ids UUID wideVineUuid new UUID(-0x121074568629b532L, -0x5c37d8232ae2de13L); try {MediaDrm wvDrm new MediaDrm(wideVineUuid);byte[] wideVineId wvDrm.getPropertyByteArray(MediaDrm.PROPERTY_DEVICE_UNIQUE_ID);return Utils.md5(wideVineId); } catch (Exception e) {return null; } 3.gsfiid gsfiid是Google Service Framework IDGoogle服务框架 ID public static String gsfid() {Context context DeviceGlobal.getContext();Uri uri Uri.parse(content://com.google.android.gsf.gservices);if (uri ! null) {try (Cursor cursor context.getContentResolver().query(uri,null, null,new String[]{android_id}, null)) {if (cursor.moveToFirst()) {return Long.toHexString(Long.parseLong(cursor.getString(1)));}} catch (Throwable tr) {Logger.w(TAG, tr.toString());}}return null; } 4.apk相关 apk安装时间和路径可以通过getPackageInfo中的firstInstallTime获取可以作为唯一id和防刷 5.boot_id,oaid,imei,serial number boot_id可以通过cat /proc/sys/kernel/random/boot_id获取重启后会更新是uuid格式字符串格式。 imei是SIM卡相关的信息谷歌已经删除该属性来保护隐私性 serial number是手机adb devices的一串数字可以通过getprop ro.serialno获取 oaid是国内android广告标识符用户可以选择重置和退出广告跟踪。 6.文件哈希 使用stat获取//data//data/system/vendor/firmware/system/bin/vendor/lib/systen/framework/system/fonts或者一些固定app目录的文件名inodeuid创建时间最后修改时间组合等属性组合求hash作为指纹 7.网络相关 这里主要是指机器的ipmac网络的类型这里的信息除了可以做设备指纹之外也可以用来判断设备的环境等特征。获取方法可以通过ip -a或者ip neigh show命令行执行或者读取/proc/net/arp获取相关信息 root检测 1.path检测 getenv(path) 获取路径和su或者magisk组合判断root是否存在 2.属性获取 可以通过以下属性特征来判断设备是不是root了 getprop service.adb.root 1 getprop init.svc.adb_root running getprop ro.secure 0 getprop ro.debuggable 1 getprop ro.build.tags test-keys 3.内存扫描 内存扫描有以下几种方式——1.检测/proc/self/maps 是否存在名为“/memfd:/jit-cache的段加载zygisk模块2.检测栈空间[stack]的权限是否为rw-p3.检测map表是否存在匿名的且具有可执行属性。 4.selinux上下文检测 cat /proc/self/attr/prev看文件中的内容是否为u:r:zygote:s0其中r表示进程zygote表示进程权限 5.常见root应用检测 可以尝试包名检测遍历/data/data/目录看有没有一下目录 com.topjohnwu.magisk eu.chainfire.supersu com.noshufou.android.su com.noshufou.android.su.elite com.koushikdutta.superuser com.thirdparty.superuser com.yellowes.su com.fox2code.mmm io.github.vvb2060.magisk com.kingroot.kinguser com.kingo.root com.smedialink.oneclickroot com.zhiqupk.root.global com.alephzain.framaroot io.github.huskydg.magisk me.weishu.kernelsu 6.其他 可以尝试访问/data/system/etc查询是否有busybox可以执行——尝试which busybox或者是执行busybox hook检测 1.frida检测 默认端口检测——27042常见路径检测——/data/local/tmp/frida-server检查进程/proc/self/fd/目录寻找是否存在关键字linjector内存模块扫描——frida-agentfrida-gadge可以去/proc/self/maps文件下找找字符串inlinehook检测frida——查询函数头部是不是0xd61f020058000050 2.Xposed检测 java.lang.ClassLoader.getSystemClassLoader.loadClass(de.robv.android.xposed.XposedHelpers) ——看xposed是否加载遍历/data/data/目录寻找有无以下包名 de.robv.android.xposed.installer #Xposed框架 org.meowcat.edxposed.manager #EdXposed框架 com.tsng.hidemyapplist #隐藏应用列表 com.tsng.hidemyroot #隐藏Root org.lsposed.manager #LSPosed框架 me.weishu.exp #VirtualXposed 太极 top.canyie.dreamland.manager #VirtualXposed 夢境 io.va.exposed #VirtualXposed 夢境 io.va.exposed64 #VirtualXposed 夢境 io.virtualapp #VirtualApp io.virtualapp.sandvxposed64 #VirtualApp 检测下列文件或文件路径是否存在 /sbin/.magisk/modules/riru_lsposed /data/adb/lspd /sbin/.magisk/modules/zygisk_lsposed /sbin/.magisk/modules/riru_edxposed /data/misc/riru/modules/edxp /data/adb/riru/modules/edxp.prop /sbin/.magisk/modules/taichi /data/misc/taichi /sbin/.magisk/modules/dreamland /data/misc/riru/modules/dreamland /data/adb/riru/modules/dreamland /system/bin/app_process.orig /system/xposed.prop /system/framework/XposedBridge.jar /system/lib/ libxposed_art.so /system/lib/ libxposed_art.so .no_orig /system/lib64/ libxposed_art.so /system/lib64/ libxposed_art.so .no_orig /system/bin/app_process_zposed /system/framework/ZposedBridge.jar /system/lib/ libzposed_art.so artmethod结构体判断artmethod中access_flags和entry_point_from_jni_在hook过程中会发生更改。 3.调试检测 调试端口检测——读取/proc/net/tcpida远程调试端口用的是23946端口调试进程名检测——直接ps -a看是否有android-server或者adb-servertracepid检测——读取/proc/self/status查看tracepid是不是为0ptrace检测——因为每个进程只能被一个ptrace检测所以可以自己启动一个ptrace或者对ptrace检测断电指令检测——检测bkpt指令dalvik模式下可以用libdvm.so中dvmDbgIsDebuggerConnected()函数检测art模式下使用libart.so中gDebuggerActive中可以读取/proc/self/cmdline查看内容是否为zygote 模拟器云手机检测 1.特有的文件 模拟器特有文件 /boot/bstmods/vboxguest.ko, /boot/bstmods/vboxsf.ko, /dev/mtp_usb, /dev/qemu_pipe, /dev/socket/baseband_genyd, /dev/socket/genyd, /dev/socket/qemud, /dev/socket/windroyed-audio, /dev/socket/windroyed-camera, /dev/socket/windroyed-gps, /dev/socket/windroyed-sensors, /dev/vboxguest, /dev/vboxpci, /dev/vboxuser, /fstab.goldfish, /fstab.nox, /fstab.ranchu-encrypt, /fstab.ranchu-noencrypt, /fstab.ttVM_x86, /fstab.vbox86, /init.goldfish.rc, /init.magisk.rc, /init.nox.rc, /init.ranchu-encrypt.rc, /init.ranchu-noencrypt.rc, /init.ranchu.rc, /init.ttVM_x86.rc, /init.vbox86.rc, /init.vbox86p.rc, /init.windroye.rc, /init.windroye.sh, /init.x86.rc, /proc/irq/20/vboxguest, /sdcard/Android/data/com.redfinger.gamemanage, /stab.andy, /sys/bus/pci/drivers/vboxguest, /sys/bus/pci/drivers/vboxpci, /sys/bus/platform/drivers/qemu_pipe, /sys/bus/platform/drivers/qemu_pipe/qemu_pipe, /sys/bus/platform/drivers/qemu_trace, /sys/bus/virtio/drivers/itolsvmlgtp, /sys/bus/virtio/drivers/itoolsvmhft, /sys/class/bdi/vboxsf-1, /sys/class/bdi/vboxsf-2, /sys/class/bdi/vboxsf-3, /sys/class/misc/qemu_pipe, /sys/class/misc/vboxguest, /sys/class/misc/vboxuser, /sys/devices/platform/qemu_pipe, /sys/devices/virtual/bdi/vboxsf-1, /sys/devices/virtual/bdi/vboxsf-2, /sys/devices/virtual/bdi/vboxsf-3, /sys/devices/virtual/misc/qemu_pipe, /sys/devices/virtual/misc/vboxguest, /sys/devices/virtual/misc/vboxpci, /sys/devices/virtual/misc/vboxuser, /sys/fs/selinux/booleans/in_qemu, /sys/kernel/debug/bdi/vboxsf-1, /sys/kernel/debug/bdi/vboxsf-2, /sys/kernel/debug/x86, /sys/module/qemu_trace_sysfs, /sys/module/vboxguest, /sys/module/vboxguest/drivers/pci:vboxguest, /sys/module/vboxpcism, /sys/module/vboxsf, /sys/module/vboxvideo, /sys/module/virtio_pt/drivers/virtio:itoolsvmhft, /sys/module/virtio_pt_ie/drivers/virtio:itoolsvmlgtp, /sys/qemu_trace, /system/app/GenymotionLayout, /system/bin/OpenglService, /system/bin/androVM-vbox-sf, /system/bin/droid4x, /system/bin/droid4x-prop, /system/bin/droid4x-vbox-sf, /system/bin/droid4x_setprop, /system/bin/enable_nox, /system/bin/genymotion-vbox-sf, /system/bin/microvirt-prop, /system/bin/microvirt-vbox-sf, /system/bin/microvirt_setprop, /system/bin/microvirtd, /system/bin/mount.vboxsf, /system/bin/nox, /system/bin/nox-prop, /system/bin/nox-vbox-sf, /system/bin/nox_setprop, /system/bin/noxd, /system/bin/noxscreen, /system/bin/noxspeedup, /system/bin/qemu-props, /system/bin/qemud, /system/bin/shellnox, /system/bin/ttVM-prop, /system/bin/windroyed, /system/droid4x, /system/etc/init.droid4x.sh, /system/etc/init.tiantian.sh, /system/lib/egl/libEGL_emulation.so, /system/lib/egl/libEGL_tiantianVM.so, /system/lib/egl/libEGL_windroye.so, /system/lib/egl/libGLESv1_CM_emulation.so, /system/lib/egl/libGLESv1_CM_tiantianVM.so, /system/lib/egl/libGLESv1_CM_windroye.so, /system/lib/egl/libGLESv2_emulation.so, /system/lib/egl/libGLESv2_tiantianVM.so, /system/lib/egl/libGLESv2_windroye.so, /system/lib/hw/audio.primary.vbox86.so, /system/lib/hw/audio.primary.windroye.so, /system/lib/hw/audio.primary.x86.so, /system/lib/hw/autio.primary.nox.so, /system/lib/hw/camera.vbox86.so, /system/lib/hw/camera.windroye.jpeg.so, /system/lib/hw/camera.windroye.so, /system/lib/hw/camera.x86.so, /system/lib/hw/gps.nox.so, /system/lib/hw/gps.vbox86.so, /system/lib/hw/gps.windroye.so, /system/lib/hw/gralloc.nox.so, /system/lib/hw/gralloc.vbox86.so, /system/lib/hw/gralloc.windroye.so, /system/lib/hw/sensors.nox.so, /system/lib/hw/sensors.vbox86.so, /system/lib/hw/sensors.windroye.so, /system/lib/init.nox.sh, /system/lib/libGM_OpenglSystemCommon.so, /system/lib/libc_malloc_debug_qemu.so, /system/lib/libclcore_x86.bc, /system/lib/libdroid4x.so, /system/lib/libnoxd.so, /system/lib/libnoxspeedup.so, /system/lib/modules/3.10.30-android-x86.hd, /system/lib/vboxguest.ko, /system/lib/vboxpcism.ko, /system/lib/vboxsf.ko, /system/lib/vboxvideo.ko, /system/lib64/egl/libEGL_emulation.so, /system/lib64/egl/libGLESv1_CM_emulation.so, /system/lib64/egl/libGLESv2_emulation.so, /vendor/lib64/egl/libEGL_emulation.so, /vendor/lib64/egl/libGLESv1_CM_emulation.so, /vendor/lib64/egl/libGLESv2_emulation.so, /vendor/lib64/libandroidemu.so, /system/lib64/hw/gralloc.ranchu.so, /system/lib64/libc_malloc_debug_qemu.so, /system/usr/Keylayout/droid4x_Virtual_Input.kl, /system/usr/idc/Genymotion_Virtual_Input.idc, /system/usr/idc/droid4x_Virtual_Input.idc, /system/usr/idc/nox_Virtual_Input.idc, /system/usr/idc/windroye.idc, /system/usr/keychars/nox_gpio.kcm, /system/usr/keychars/windroye.kcm, /system/usr/keylayout/Genymotion_Virtual_Input.kl, /system/usr/keylayout/nox_Virtual_Input.kl, /system/usr/keylayout/nox_gpio.kl, /system/usr/keylayout/windroye.kl, system/etc/init/ndk_translation_arm64.rc, /system/xbin/noxsu, /ueventd.android_x86.rc, /ueventd.andy.rc, /ueventd.goldfish.rc, /ueventd.nox.rc, /ueventd.ranchu.rc, /ueventd.ttVM_x86.rc, /ueventd.vbox86.rc, /vendor/lib64/libgoldfish-ril.so, /vendor/lib64/libgoldfish_codecs_common.so, /vendor/lib64/libstagefright_goldfish_avcdec.so, /vendor/lib64/libstagefright_goldfish_vpxdec.so, /x86.prop, /system/lib/virtio_pt.ko, //itoolsAVM dev/bst_gps, //BlueStacks /dev/bstgyro, //BlueStacks Game /system/bin/bstfolder, //BlueStacks Game /system/lib/msf.ko, //memu /dev/nemuuser, //Mumu /dev/nemuinit, //Mumu /system/lib/fastpipe.ko, //Dnplayer /fstab.andy, //AndY /dev/virtiopt, //itoolsAVM or nox /sys/module/vboxsf/srcversion, //vbox /dev/goldfish_pipe //qemu 2.特有的属性 qemu特有的属性 ro.kernel.qemu.avd_name, ro.kernel.qemu.gles, ro.kernel.qemu.gltransport, ro.kernel.qemu.opengles.version, ro.kernel.qemu.uirenderer, ro.kernel.qemu.vsync, ro.qemu.initrc, init.svc.qemu-props, qemu.adb.secure, qemu.cmdline, qemu.hw.mainkeys, qemu.logcat, ro.adb.qemud, qemu.sf.fake_camera, qemu.sf.lcd_density, qemu.timezone, init.svc.goldfish-logcat, ro.boottime.goldfish-logcat, ro.hardware.audio.primary, init.svc.ranchu-net, init.svc.ranchu-setup, ro.boottime.ranchu-net, ro.boottime.ranchu-setup, init.svc.droid4x, init.svc.noxd, init.svc.qemud, init.svc.goldfish-setup, init.svc.goldfish-logcat, init.svc.ttVM_x86-setup, vmos.browser.home, vmos.camera.enable, ro.trd_yehuo_searchbox, init.svc.microvirtd, init.svc.vbox86-setup, ro.ndk_translation.version, redroid.width, redroid.height, redroid.fps, ro.rf.vmname模拟器属性 init.svc.microvirtd, bst.version, ro.phoenix.version.code, ro.phoenix.version.codename, init.svc.droid4x, microvirt.memu_version, microvirt.imsi, microvirt.simserial, ro.px.version.build, ro.phoenix.os.branch, init.svc.su_kpbs_daemon, init.svc.noxd, init.svc.ttVM_x86-setup, init.svc.xxkmsg, ro.bild.remixos.version, microvirt.mut, init.svc.ldinit, sys.tencent.os_version, sys.tencent.android_id, ro.genymotion.version, init.svc.pkVM_x86-setup, ro.andy.version, ro.build.version.release, ro.product.model, ro.product.brand, ro.boot.bootloader, ro.build.version.securitypatch, ro.build.version.incremental, gsm.version.baseband, gsm.version.ril-impl, ro.build.fingerprint, ro.build.description, ro.build.product, ro.boot.vbmeta.digest, ro.hardware, ro.product.name, ro.product.board, ro.recovery_id, ro.expect.recovery_id, ro.board.platform, ro.product.manufacturer, ro.product.device, sys.usb.state, ro.setupwizard.mode, ro.build.id, ro.build.tags, ro.build.type, ro.debuggable 3.系统架构判断 主要是判断系统是x86还是armarm64的通常手机是arm或者arm64架构的模拟器是x86架构的这里获取的方式使用seccomp来判断 先安装seccomp架子 void install_check_arch_seccomp() {struct sock_filter filter[15] {BPF_STMT(BPF_LD BPF_W BPF_ABS, (uint32_t) offsetof(struct seccomp_data, nr)),BPF_JUMP(BPF_JMP BPF_JEQ, __NR_getpid, 0, 12),BPF_STMT(BPF_LD BPF_W BPF_ABS, (uint32_t) offsetof(struct seccomp_data, args[0])),BPF_JUMP(BPF_JMP BPF_JEQ, DetectX86Flag, 0, 10),BPF_STMT(BPF_LD BPF_W BPF_ABS, (uint32_t) offsetof(struct seccomp_data, arch)),BPF_JUMP(BPF_JMP BPF_JEQ, AUDIT_ARCH_X86_64, 0, 1),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ERRNO | (864 SECCOMP_RET_DATA)),BPF_JUMP(BPF_JMP BPF_JEQ, AUDIT_ARCH_I386, 0, 1),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ERRNO | (386 SECCOMP_RET_DATA)),BPF_JUMP(BPF_JMP BPF_JEQ, AUDIT_ARCH_ARM, 0, 1),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ERRNO | (0xA32 SECCOMP_RET_DATA)),BPF_JUMP(BPF_JMP BPF_JEQ, AUDIT_ARCH_AARCH64, 0, 1),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ERRNO | (0xA64 SECCOMP_RET_DATA)),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ERRNO | (6 SECCOMP_RET_DATA)),BPF_STMT(BPF_RET BPF_K, SECCOMP_RET_ALLOW)};struct sock_fprog program {.len (unsigned short) (sizeof(filter) / sizeof(filter[0])),.filter filter};errno 0;if (prctl(PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0)) {LOG(ERROR) prctl(PR_SET_NO_NEW_PRIVS) strerror(errno);}errno 0;if (prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, program)) {LOG(ERROR) prctl(PR_SET_SECCOMP) strerror(errno);} }配合上面的代码 。启动调用getpid 上面的架子会对getpid函数进行拦截 然后架构进行判断 string check_arch_by_seccomp() {if (get_sdk_level() __ANDROID_API_N_MR1__){return ;}errno 0;syscall(__NR_getpid, DetectX86Flag);if (errno 386) {return I386设备;} else if (errno 864) {return X86_64设备;} else if (errno 0xA32 || errno 0xA64) {return ;}else if (errno 0) {//可能是没有开启seccompreturn ;}return (疑似X86模拟器设备 to_string(errno)); }
http://www.hkea.cn/news/14559024/

相关文章:

  • 服饰网站建设 e-idea做网站需要掌握的软件
  • 网站建设维护与推广销售培训
  • 优惠劵网站怎么做企业网站建设与网页设计
  • 上海网站建设公司服务有哪些wordpress的用户名密码
  • 网站建设常熟红色简约的手机社区类网站html5响应式模板下载
  • 烟台专业网站建设免费设计软件app
  • 义乌市建设局官方网站泰安市网站建设公司
  • 做网站主页上主要放哪些内容公司效果图
  • 40万用户自助建站织梦网站地图在线生成
  • 建设一批适合青少年的网站专门查大学的网站
  • 山海关城乡建设局网站教育网站制作下载
  • 网站百度知道做网站点击挣钱不
  • 公司 网站 模板jsp网页成品免费下载
  • 网站文件夹目录结构wordpress 文章 自动生成标签
  • 网站大数据怎么做wordpress网站建小程序
  • 网站开发网网站建设有什么意义
  • 江苏镇江论坛谈网站优化的外部链接质量
  • 常州微网站建设百度关键词推广2元一天
  • 电商网站的功能有哪些大企业官网设计
  • 网站建设里面链接打不开广东网站seo
  • 如何做直播类网站网站开启速度慢
  • 在工商局网站做年报要交费吗菜谱wordpress
  • 做网站搜索如何显示官网网络营销的功能有哪些
  • 个人做动漫资源网站有哪些h5商城网站是什么意思
  • 怎么建设一个营销型网站个人网站 备案 攻略
  • 一站式服务英文如何分析网站开发语言
  • 江苏网站建设要多少钱车身做网站宣传图
  • 网站空间提供商wordpress添加文件夹
  • 网络推广软件费用情况佛山全网优化
  • 网站图片大小多少合适wordpress po翻译