Target 到 Android 10 的应用不能创建可执行文件了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gzxu
V2EX    Android

Target 到 Android 10 的应用不能创建可执行文件了

  •  
  •   gzxu 2019 年 9 月 4 日 via Android 15463 次点击
    这是一个创建于 2341 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://developer.android.google.cn/about/versions/10/behavior-changes-all#execute-ermission

    大概意思是应用只能从 APK 内部打包好的可执行文件里面创建进程,不能通过下载或者自己编译的方式生成可执行文件,生成了也不给执行

    所以感觉 Termux 要凉啊,好不容易有个 Android 上面能用的包管理器了,而且自己用 Termux 里面的 gcc 或者 go build 编译程序这种方法也要凉了

    10 条回复    2019-09-05 06:38:21 +08:00
    liuxey
        1
    liuxey  
       2019 年 9 月 4 日
    Android 10 includes the following security changes.

    Removed execute permission for app home directory

    Untrusted apps that target Android 10 cannot invoke exec() on files within the app's home directory. This execution of files from the writable app home directory is a W^X violation. Apps should load only the binary code that's embedded within an app's APK file.

    In addition, apps that target Android 10 cannot in-memory modify executable code from files which have been opened with dlopen(). This includes any shared object (.so) files with text relocations.

    ==

    看着是有条件的禁止,不是做 android 的,不太清楚具体细节
    gzxu
        2
    gzxu  
    OP
       2019 年 9 月 4 日 via Android
    @liuxey #1 嗯呢,大概看了下讲的就是这个意思,只要是第三方针对 API 29 的都无法执行可写的文件
    momocraft
        3
    momocraft  
       2019 年 9 月 4 日
    什么叫 Untrusted apps,从 google play 装的算吗
    s82kd92l
        4
    s82kd92l  
       2019 年 9 月 4 日 via Android
    Termux 早就有 issue 讨论这个了,以后很可能要采用 proot 或者 qemu user mode 来绕过
    iwtbauh
        5
    iwtbauh  
       2019 年 9 月 4 日 via Android
    wtf ? fuck ypu Google!!!
    deorth
        6
    deorth  
       2019 年 9 月 4 日
    逐渐 IOS 化
    JIT 怎么办
    Buges
        7
    Buges  
       2019 年 9 月 4 日 via Android
    挺好的,一定程度遏制了下热更新。
    至于 termux,拿个 root 处理下就好。
    azh7138m
        8
    azh7138m  
       2019 年 9 月 4 日 via Android
    @Buges 唉,现在不 root 也能跑的吗。。。
    weishu
        9
    weishu  
       2019 年 9 月 4 日
    Termux 凉不了,这也不是用来遏制热更新的。/data/data/<package>/ 下的文件无法 exec,但是不意味着无法动态加载 dex,也不意味着 /data/app/<package>/lib [param] 无法执行。
    gzxu
        10
    gzxu  
    OP
       2019 年 9 月 5 日 via Android
    @Buges #7 iOS 上都能靠 JS 搞出热更新感觉更多的是恶心我们这样喜欢折腾的人

    @weishu #9 能写的地方都不能执行,所以 apt-get 那一套是没办法用了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2107 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 10:19 PVG 18:19 LAX 02:19 JFK 05:19
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86