ฉันจะเข้าถึงไฟล์บันทึก android บน Nexus 7 ของฉันโดยไม่ต้องเข้าถึงรูทได้อย่างไร


9

เนื่องจากตอนนี้aLogcat ไม่สามารถใช้งานได้กับ Jelly Bean อีกต่อไปฉันจะเข้าถึงไฟล์บันทึกของระบบบนอุปกรณ์ของฉันได้อย่างไรโดยไม่ต้องเข้าถึงรูทหรือเชื่อมต่อกับคอมพิวเตอร์

ฉันได้ลองใช้adb logcatจากพีซีของฉันและใช้งานได้ดีดังนั้นฉันจึงรู้ว่ามีข้อความจำนวนมากเข้าสู่ระบบ

การใช้logcatจากAndroid Terminal Emulatorบน Nexus 7 ของฉันแทบจะไม่มีอะไรแสดงเอาท์พุทและadb logcatจากAndroid Terminal Emulatorก็เริ่มต้น daemon แล้วก็บอกว่า- waiting for device -ไม่มีอะไรปรากฏขึ้นอีก

ดังนั้นเป็นไปได้ในการเข้าถึงไฟล์บันทึก android บน Nexus 7 ของฉันโดยไม่ต้องเข้าถึง rootหรือไม่?



@Izzy - จุดของคำถามนี้คือโซลูชันทั้งหมดในคำถามอื่นของฉัน (ซึ่งฉันเชื่อมโยงกับคำถามนี้) จำเป็นต้องมีการเข้าถึงรูท ในขณะที่โซลูชันเหล่านี้มีประโยชน์สำหรับผู้ที่รูทอุปกรณ์ของพวกเขาฉันต้องการโซลูชันที่เฉพาะเจาะจงมากขึ้นสำหรับผู้ที่ไม่ได้รูทอุปกรณ์ของพวกเขา
Mark Booth

คุณอาจพบว่าPhoneHomeน่าดู
Dori

คำตอบ:


12

ไม่เพื่อเหตุผลด้านความปลอดภัยไม่สามารถเข้าถึงไฟล์บันทึก android บน Nexus 7 (หรืออุปกรณ์อื่น ๆ ที่ใช้ Jelly Bean หรือสูงกว่า) โดยไม่ต้องเข้าถึงรูท Google เปลี่ยนด้วย Jelly Bean

ฉันขอแนะนำให้คุณรอจนกว่าผู้อ่าน logcat เช่น aLogCat และได้รับการแก้ไข (เช่นพวกเขาจะต้องเข้าถึงรากเพื่อแสดงบันทึกทั้งหมดแล้ว)

จากAISEC-TR-2012-001-Android-OS-Security.pdf - แบบจำลองการอนุญาต Android 3.3 :

การอนุญาต READ_LOGS สามารถทดแทนสิ่งต่อไปนี้บนอุปกรณ์หลายเครื่องขึ้นอยู่กับรุ่น Android และทำให้เวอร์ชันแอปมาตรฐานติดตั้ง

  • READ_CONTACTS

  • GET_TASKS - กิจกรรมที่เริ่มต้นทุกรายการในบันทึกของระบบ

  • READ_HISTORY_BOOKMARKS - การเปิดหน้าเว็บใหม่เป็นกิจกรรมของเบราว์เซอร์และบันทึกไว้

  • READ_SMS

โซลูชันทั้งหมดด้านล่างต้องการการเข้าถึงรูท :

คุณต้องเรียกใช้ logcat ในฐานะรูทในเชลล์หรือให้สิทธิ์ด้วยตนเองผ่านคำสั่ง shell pm (จำเป็นต้องใช้รูท) ด้วย (ดูXDA , แลกเปลี่ยนorg.jtb.alogcat.donateด้วยชื่อ pkg ของแอป):

pm grant org.jtb.alogcat.donate android.permission.READ_LOGS

นี่สำหรับคนขี้เกียจและไม่แนะนำ: ถ้าคุณหมดหวังประมาทและขี้เกียจคุณสามารถแก้ไขได้โดยให้สิทธิ์ READ_LOGS ทุกแอปโดยใช้แฮ็กที่น่าเกลียดและไม่ปลอดภัยนี้ ( เชนไฟร์ผ่านทวิตเตอร์ ):

chmod 04755 /system/bin/logcat

หากต้องการอ้างอิงผู้พัฒนา CyanogenMod Koushik Dutta's G + โพสต์ :

สิทธิ์ / พฤติกรรมของบันทึก Android เปลี่ยนแปลงใน JellyBean หรือไม่

ดูเหมือนว่าหากแอปพลิเคชันรัน "logcat" ในตอนนี้ก็จะเห็นเฉพาะรายการบันทึกที่สร้างขึ้นโดย UID ของมัน เส้นบันทึกจาก UID อื่นไม่แสดงขึ้น โดยทั่วไปดูเหมือนว่าจะถูกกรองในขณะนี้

ฉันมีสิทธิ์เหมือนเดิม ยังยืนยันว่าสิ่งเดียวกันนี้กำลังเกิดขึ้นในแอพตัวรวบรวมบันทึกอื่น ๆ


ไม่มีทางที่ปราศจากรากที่ฉันรู้ เพื่อความปลอดภัย เริ่มต้นด้วย JellyBean การอนุญาต read_logs ไม่จำเป็นต้องได้รับอนุญาตอีกต่อไป (แต่ละแอปสามารถดูได้เฉพาะบันทึกของตัวเองเท่านั้น)
ce4

ขอบคุณสำหรับการแก้ไขและลิงค์ไปยัง xda ฉันรวมมันไว้ด้วย
ce4

ขอขอบคุณที่เพิ่มpm grantตัวเลือก โปรดทราบว่าตามที่ฉันพูดในคำตอบอื่น ๆ ของฉันคุณต้องระบุแพคเกจที่แตกต่างกันเล็กน้อยถ้าคุณไม่ได้ใช้aLogcatรุ่นบริจาค :pm grant org.jtb.alogcat android.permission.READ_LOGS
Mark Booth

เอกสารอ้างอิงจะอธิบายถึงความREAD_LOGSเท่าเทียมกันREAD_CONTACTSในบางแพลตฟอร์ม ผมคิดว่าหมายถึงการที่ปพลิเคชันบางใส่ข้อมูลรายชื่อผู้ติดต่อในบันทึก READ_CONTACTSแต่ที่ไม่ได้จริงๆเช่นเดียวกับ แต่ฉันจะบอกว่ากระดาษเขียนด้วยน้ำเสียงตื่นตกใจ
Flow

READ_LOGS มีการรั่วไหลของข้อมูลมากกว่าข้อมูลการติดต่อ มีชื่อผู้ใช้, ที่อยู่ gmail, สถานที่, แอพที่ติดตั้ง (การใช้งานแอพ) และอื่น ๆ บวก: มันถูกใช้เพื่ออ่านและดึงข้อมูลที่อยู่จากการทิ้งสแต็คของ daemons ของระบบในช่วงก่อน ASLR โดยการหาช่องโหว่ของราก ตอนนี้พวกเขากำลังปิดส่วนใหญ่ (4.1 ±) คุณอาจได้รับความคุ้มครองฝูง (เปรียบเทียบกับการไม่ให้วัคซีนลูกของคุณในประชากรที่ได้รับวัคซีนโรคฟรี) มีปัญหาเกิดขึ้นและ Google ก็ทำสิ่งที่ถูกต้อง
ce4

1

ฉันสับสนด้วยสิ่งนี้แม้ว่ามันจะอธิบายบางสิ่งบางอย่าง

ใช้แอพเดียวกันบน nexus7 ของฉันและ galaxy galaxy Nexus ทั้งบน jellybean โทรศัพท์จะเห็นเอาต์พุตบันทึกจากแอพทั้งหมดแท็บเล็ตไม่ นี่บอกได้เลยว่ามันไม่ใช่ Jellybean สำหรับ Nexus 7 สำรองข้อมูลนี้ฉันได้ตรวจสอบแล้วและพวกเขาทั้งสองมีเมล็ดแตกต่างกัน แท็บเล็ตที่ใหม่กว่า

อาจเป็นเคอร์เนลที่ได้รับการปรับปรุงซึ่งหมายความว่าบันทึกจะไม่ปรากฏขึ้น

คิดว่าฉันจะต้องรูทหลังจากทั้งหมด: (


นั่นเป็นรัสที่น่าสนใจขอบคุณสำหรับข้อมูลพิเศษ
Mark Booth

ที่จริงตอนนี้ฉันได้รับแจ้งอย่างน่าเชื่อถือแล้วว่ามันเป็นเพราะแอพที่ฉันใช้เพื่อดูบันทึกถูกติดตั้งในเครื่องของฉันเมื่อฉันมี ICS ดังนั้นมันจึงมีสิทธิ์ในการดูบันทึก
Russ Wheeler

1

ฉันได้พัฒนาแอพ Logcatที่ใช้วิธีการอื่น มันใช้คุณสมบัติการดีบักระยะไกล คุณต้องเปิดใช้งานบนโทรศัพท์ก่อน แต่ต้องทำเพียงครั้งเดียวจากนั้นคุณสามารถใช้แอปเพื่อเรียกคืนบันทึกทั้งหมด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.