三種root的修補方式

三種root的修補方式

system/core/adb/abd.c

adbd漏洞,請看abd.c的第917行
/* then switch user and group to "shell" */
? ?? ???if (setgid(AID_SHELL) != 0) {
? ?? ?? ?? ?exit(1);
? ?? ???}
? ?? ???if (setuid(AID_SHELL) != 0) {
? ?? ?? ?? ?exit(1);
? ?? ???}

?版本:1.6 r1 至2.2.3 r2.1

?

?

udev漏洞也被修復了,會檢查消息的來源的gid和uid
system/core/libcutils/uevent.c
ssize_t n = recvmsg(device_fd, &hdr, 0);
? ?? ???if (n <= 0) {
? ?? ?? ?? ?break;
? ?? ???}

? ?? ???if ((snl.nl_groups != 1) || (snl.nl_pid != 0)) {
? ?? ?? ?? ?/* ignoring non-kernel netlink multicast message */
? ?? ?? ?? ?continue;
? ?? ???}

? ?? ???struct cmsghdr * cmsg = CMSG_FIRSTHDR(&hdr);
? ?? ???if (cmsg == NULL || cmsg->cmsg_type != SCM_CREDENTIALS) {
? ?? ?? ?? ?/* no sender credentials received, ignore message */
? ?? ?? ?? ?continue;
? ?? ???}

? ?? ???struct ucred * cred = (struct ucred *)CMSG_DATA(cmsg);
? ?? ???if (cred->uid != 0) {
? ?? ?? ?? ?/* message from non-root user, ignore */
? ?? ?? ?? ?continue;
? ?? ???}

? ?? ???if(n >= UEVENT_MSG_LEN)? ?/* overflow -- discard */
? ?? ?? ?? ?continue;

?

/system/core/libsysutils/src/FrameworkListener.cpp

FrameworkListener漏洞修復,會判斷長度,若超過,則跳轉。 ??

? ?? ???if (q >= qlimit)
? ?? ?? ?? ?goto overflow;
? ?? ???*q = *p++;
? ?? ???if (!quote && *q == ' ') {
? ?? ?? ?? ?*q = '\0';
? ?? ?? ?? ?if (argc >= CMD_ARGS_MAX)
? ?? ?? ?? ?? ? goto overflow;
? ?? ?? ?? ?argv[argc++] = strdup(tmp);
? ?? ?? ?? ?memset(tmp, 0, sizeof(tmp));
? ?? ?? ?? ?q = tmp;
? ?? ?? ?? ?continue;
? ?? ???}

版本:2.0.1r1 至2.3.7r1

轉載于:https://www.cnblogs.com/yuan19/p/3466870.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/376192.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/376192.shtml
英文地址,請注明出處:http://en.pswp.cn/news/376192.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據挖掘十大經典算法

國際權威的學術組織the IEEE International Conference on Data Mining (ICDM) 2006年12月評選出了數據挖掘領域的十大經典算法&#xff1a;C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART. 不不過選中的十大算法&#xff0c;事實上參加評選…

windows dmp文件為0kb

列出一些遇到的情況提供參考&#xff1a; 1、棧溢出&#xff0c;多次調用T2A函數會出現程序崩潰但是dmp為0kb的問題。

dynamic與var

dynamic與var示例 var是一種語法省略寫法&#xff0c;編譯器會根據上下文推斷出正確的類型。 int[] scores new int[] { 1, 2, 7, 9, 8, 4, 6, 5 };foreach (var item in scores){Console.WriteLine(item);} 在大多數情況下&#xff0c;dynamic 類型與 object 類型的行…

線程間的消息(或數據)傳遞

使用“事件”可以實現線程間“消息/數據”的傳遞&#xff0c;非常棒的一種方法。轉載于:https://www.cnblogs.com/changbaishan/p/3471113.html

gt9xx linux 移植_GT9XX驅動移植說明書_for_Android_2014011401.pdf

GT9XXforAndroid驅動移植說明書一、驅動基本信息支持芯片型號 GT911 GT9110 GT9110P GT913 GT915 GT918 GT927 GT928 GT960GT968 GT910 GT912 GT960F GT950 GT968F GT9158 GT967 GT9150GT963GT9271GT917DI2C設備地址(7位) 0x5d、0x14I2C寄存器地址 16位APK工具/ADB工具 支持自動…

spring-session之一:簡介、使用及實現原理

一、背景 http session&#xff08;企業&#xff09;一直都是我們做集群時需要解決的一個難題&#xff0c;我們知道HttpSession是通過Servlet容器創建和管理的&#xff0c;像Tomcat/Jetty都是保存在內存中的。而如果我們把web服務器搭建成分布式的集群&#xff0c;然后利用LVS或…

How to check bad fix

最近做了一個backport的票&#xff0c;backport就是別人以前修復了這個bug&#xff0c;我只需要將fix移植到客戶的系統中。這是一 個沒有技術含量的票&#xff0c;遇到簡單的票&#xff0c;三下五除二就解決了。但是遇到目標版本與master差別大時&#xff0c;也許backport后不好…

cad2017怎么改變選擇方式_家用胎心儀怎么使用?建議孕媽媽選擇數胎動的方式...

一般胎心儀都有說明書&#xff0c;孕媽媽可以根據說明書上的方法去做。 下面介紹比較通用的方法。時間&#xff1a;早中晚餐后的30-60分鐘內 環境&#xff1a;周圍沒有電磁或輻射等干擾 輔助&#xff1a;耦合劑 步驟&#xff1a; 1、平躺&#xff0c;尋找適合胎心位置 在聽胎心…

c#endread怎么打印出來_打印機打印出來是白板是怎么回事

引起針式打印紙空白的原因大多是由于色帶油墨干涸、色帶拉斷、打印頭損壞等&#xff0c;應及時更換色帶或維修打印頭。故障現象:針式打印機有打印聲但打印空白。維修方法:具體解決方法如下:1) 檢查打印機色帶盒是否正確安裝&#xff0c;如果安裝不正確&#xff0c;重新安裝色帶…

使用dnspod遭遇的奇特問題以及背后的原因與臨時解決方法

由于園子里有不少用戶在使用dnspod&#xff0c;我們覺得有必要將這兩天blogjava.net域名在dsnpod遇到的奇特問題分享一下&#xff0c;以免再有人踩著這個坑。 12月11日&#xff0c;我們登錄到dnspod的后臺時&#xff0c;大吃一驚&#xff0c;blogjava.net這個域名竟然消失了。 …

lgg6可以root的版本_Kali Linux 2020.1版本變更內容

kali2020.1于2020年1月28日發布&#xff0c;為2020年的第一個版本&#xff0c;由于此版本相較以前有較大變化&#xff0c;故專篇記錄一下。根據官方說明&#xff0c;主要改變如下&#xff1a;默認用戶改為非root用戶針對不同需求出了單獨的鏡像文件nethunter改為非root用戶改進…

隨機生成六位不重復數值

在《Core JAVA》中有個隨機生成六位不重復數值的算法&#xff0c;大二用過一次&#xff0c;今天在寫《Algorithms》的練習題遇到類似的問題&#xff0c;特貼出&#xff01; 1 // 隨機生成六位不重復的數字2 private static int generate6BitInt() {3 int[] arr {0, 1, 2, …

.net 代理類(WebService代理類的詳解 )

http://hi.baidu.com/654085966/item/53ee8c0f108ad78202ce1b1d -----------轉自 客戶端調用Web Service的方式我現在知道的有三種,分別為Http_Get,Http_Post和通過代理類來調用 直接通過HTTP-GET和直接通過HTTP-POST來請求訪問Web服務是非常底層的且麻煩,(詳細用法請查看C#分…

icem密度盒怎么設置_怎么做好火災自動報警系統施工安裝?

關于火災自動報警系統施工安裝GB50166-2019 《火災自動報警系統施工及驗收標準》 中有明確規定&#xff1a;3.1 一般規定3.1.1 系統部件的設置應符合設計文件和現行國家標準《火災自動報警系統設計規范》GB50116的規定。3.1.2 有爆炸危險性的場所&#xff0c;系統的布線和部件的…

Android 廣播機制以及用法詳解 (轉)

轉&#xff1a;http://blog.sina.com.cn/s/blog_5da93c8f010178zl.html 參考&#xff1a;http://blog.sina.com.cn/s/blog_80723de801014e2g.htmlhttp://blog.csdn.net/jjaze3344/article/details/7259272一、什么是廣播&#xff1f;在android里面有各種各樣的廣播&#xff0c;…

erlzmq

ERROR REPORT 24-Dec-2013::17:01:43 The on_load function for module erlzmq_nif returned {error, {load_failed, "Failed to load NIF library: ./ebin/../priv/erlzmq_drv.so: ELF file OS ABI invalid"}} 發布到不同環境的服務器時報上面的錯誤&#xff0c;解決…

python崗位 上海_上海黑馬Python24期,平均薪資10150元,16個工作日就業率70.73%

黑馬程序員上海中心月薪一萬只是起點關注網紅遍地起&#xff0c;顏值即正義&#xff0c;要說哪個網紅靠實力&#xff0c;Python當屬第一&#xff01;Python作為時下最流行的一門網紅語言&#xff0c;用一句話來證明它的實力就是&#xff1a;Python在手&#xff0c;天下我有&…

在IIS中部署Asp.net Mvc

概述&#xff1a; 最近在做一個MVC 3的項目&#xff0c;在部署服務器時破費了一番功夫&#xff0c;特將過程整理下來&#xff0c;希望可以幫到大家&#xff01; 本文主要介紹在IIS5.1、IIS6.0、IIS7.5中安裝配置MVC 3的具體辦法&#xff01; 正文&#xff1a; IIS5.1 1. 安裝Mi…

idea在分屏拖不回來_朋友圈賞花曬照新玩法,宮格分屏視頻!

? 點擊上方【有科嘮】一起漲姿勢~近期的天氣好的不要不要的&#xff0c;出去賞花是件很愜意的事情&#xff0c;繼《城墻下》推出的近期賞花攻略&#xff0c;嘮科粉們可以跟著攻略賞花一番&#xff0c;賞花的同時&#xff0c;大家肯定會發個朋友圈紀念一下&#xff0c;見過九宮…

MFC窗口實現最小化到托盤 右鍵菜單和還原

//.h文件 void toTray();//最小化到托盤 void DeleteTray();//刪除托盤圖標afx_msg LRESULT OnShowTask(WPARAM wParam,LPARAM lParam) ;//圖標恢復//.cpp文件#define WM_SHOWTASK (WM_USER 1) #define IDR_SHOW 11 #define IDR_OTHER 12 #define IDR_EXIT 13 BEGIN_MESSAGE_MA…