Nachrichten

  • Techbord - Google behebt einen Android-Albtraumfehler, der den Benutzer daran hinderte, 911 anzurufen

    Google behebt einen Android-Albtraumfehler, der den Benutzer daran hinderte, 911 anzurufen
    Vor 20 Tagen und 18 Stunden

    Ein Integer-Überlauf-/Unterlauf-Absturz führt dazu, dass Apps, die sich schlecht benehmen, Benutzer von 911 ausschließen.
    Der Sicherheitspatch von Android für Januar ist veröffentlicht und behebt einen der schlimmsten Android-Fehler, die in einiger Zeit auftauchen werden: Bestimmte Apps können Sie daran hindern, den Notruf zu kontaktieren oder andere weltweite Notrufnummern.

    Anfang Dezember tauchte im GooglePixel-Subreddit eine erschütternde Geschichte von einem Nutzer auf, dessen Pixel 3 abstürzte, als er es am dringendsten brauchte: während er 911 für seine Großmutter wählte, die "anscheinend einen Schlaganfall hatte". Das gesamte Telefon-Subsystem schien sofort abzustürzen, wenn der Notdienst angerufen wurde, wobei der Benutzer "KitchenPicture5849" sagte, dass er den Anruf nicht zum Herstellen einer Verbindung erhalten oder auflegen konnte, um den Anruf erneut zu versuchen. Glücklicherweise war ein Festnetz in der Nähe verfügbar, nachdem ihr Android-Telefon sie im Stich gelassen hatte, und der Notdienst konnte kontaktiert werden.

    Nachdem die Krise vorüber war, gab der Nutzer eine weitere Chance, die Notrufnummer von seinem Smartphone aus anzurufen, und Android ist erneut abgestürzt, was darauf hindeutet, dass es sich nicht um einen einmaligen Fehler handelte. Eine Überprüfung ihrer Telefonrechnung ergab auch, dass KitchenPicture5849 nie eine Verbindung zu 911 hergestellt hat. Sie sagen, dass sie auch einige andere Direktnachrichten von Nutzern erhalten haben, die gemeldet haben, dass bei ihnen der gleiche Fehler aufgetreten ist.

    Google hat den Nutzer kontaktiert und öffentlich geantwortet zum Beitrag vom 8. Dezember:

    Basierend auf unserer Untersuchung konnten wir das Problem unter bestimmten Umständen reproduzieren. Wir glauben, dass das Problem nur auf einer kleinen Anzahl von Geräten auftritt, auf denen die Microsoft Teams-App installiert ist, wenn der Benutzer nicht angemeldet ist, und uns ist derzeit nur ein Benutzerbericht zum Auftreten dieses Fehlers bekannt. Wir haben festgestellt, dass das Problem durch eine unbeabsichtigte Interaktion zwischen der Microsoft Teams-App und dem zugrunde liegenden Android-Betriebssystem verursacht wurde. Microsoft hat eng mit Google zusammengearbeitet, um diese unbeabsichtigte Interaktion zu beheben.

    Google sagte, dass Microsoft so schnell wie möglich ein App-Update veröffentlichen würde und dass Benutzer im Play Store nach einem Update suchen sollten. Das Unternehmen erwähnte auch, dass ein Patch auf Betriebssystemebene einen ganzen Monat später, Anfang Januar (das ist heute) herauskommen würde. Dann hat Google keine weiteren Kommentare zu dem Problem abgegeben.

    Warum Apps die Notrufnummer brechen können

    Warte nicht. Microsoft Teams hat 911 gebrochen? Zufällige Android-Apps können die Notruffunktion unterbrechen? Wie? Warum können Apps von Drittanbietern bis auf 300 Meter von einer so kritischen Funktion entfernt sein? Machen andere Apps 911 kaputt oder nur Microsoft Teams? Während Teams behoben wurden, war es wirklich in Ordnung, Android-Benutzer einen Monat lang mit diesem Fehler auf Betriebssystemebene herumhängen zu lassen, insbesondere wenn wir keine Ahnung haben, ob andere Apps dies tun? Da Android Android ist, werden viele Telefone sowieso nie gepatcht. Wie können Benutzer wissen, dass Notdienste funktionieren? Abgesehen von der Ankündigung, einen Monat auf eine Lösung zu warten, gab Google keine Antworten.

    Zum Glück konnten einige sehr kluge Leute in der Android-Community die Antworten liefern, die Google nicht teilen würde. Mishaal Rahman, der leitende technische Redakteur von Esper, hat einen unglaublichen Medium-Beitrag geschrieben, in dem er detailliert beschreibt, wie der Fehler funktioniert und warum er auftritt. Apps auf Android mit Telefonanruffunktion können ein "PhoneAccount" beim System registrieren, um anzuzeigen, dass sie über eine gewisse Fähigkeit zum Tätigen von Anrufen verfügen. Es gibt einige Flags, die Apps mit PhoneAccount setzen können, darunter eine namens "CAPABILITY_PLACE_EMERGENCY_CALLS". Wenn die Notrufnummer 911 anrufen soll, sortiert Android die Liste der registrierten Telefonkonten und wählt einen aus. Das scheint bisher alles in Ordnung zu sein.

    Werbung

    Einer der mehreren in Rahmans Beitrag identifizierten Fehler besteht darin, dass Microsoft Teams bei jedem Start von Teams einen zusätzlichen Telefonaccount beim System registriert, vorausgesetzt, Sie sind nicht angemeldet. Beachten Sie, dass dies nicht der seltene Fall ist, dass Microsoft Teams installiert und dann nie verwendet wird – eine häufige Beschwerde der Teams-Android-App besteht darin, dass Benutzer häufig automatisch abgemeldet werden. Wenn Sie abgemeldet sind, führt das 10-malige Starten von Microsoft Teams dazu, dass 10 doppelte Telefonkonten von Teams Ihr Telefon blockieren. Teams sollten dies nicht tun, und Microsofts Update hat Teams davon abgehalten, dies zu tun, aber eine Reihe doppelter Telefonkonten sollten auch nicht ausreichen, um das Telefonsystem von Android in die Knie zu zwingen.

    Nächster Fehler: beim Auswählen eines PhoneAccount, um den Notruf durchzuführen, durchläuft Android einen komplizierten Sortierprozess, um herauszufinden, welches Konto verwendet werden soll. Der letzte Schritt in diesem Sortierprozess, der Tiebreaker, ist das Sortieren nach Hashcode. Der Hashcode-Vergleich subtrahiert nur einen Hashcode vom anderen. Aber genau wie bei diesem dummen Y2K22 Microsoft Exchange-Bug von neulich kann dies zu einem ganzzahligen Überlauf oder Unterlauf führen, und jetzt wird das Telefonsubsystem abstürzen. Der Code von Google ist fehlerhaft, aber da er der letzte Sortierungs-Tiebreaker ist, nachdem offensichtlichere Dinge wie der Paketname ausprobiert wurden, sollte er nur in der sehr spezifischen Instanz einer App aufgerufen werden, die doppelte Telefonkonten erzeugt. Vielen Dank, Microsoft!

    Google behebt seinen Integer-Überlauf-/Unterlauf-Fehler.Vergrößern / Google behebt seinen Integer-Überlauf-/Unterlauf-Fehler .Google

    Googles Fix für diesen Fehler ist hier mit dem Titel "Repariere den Integer-Überlauf/-Unterlauf, der durch das Sortieren von doppelten Telefonkonten während des Notrufversuchs verursacht wurde." Anstatt einen Hashcode von einem anderen zu subtrahieren und möglicherweise auf eine wirklich große oder wirklich kleine Zahl zu laufen, die das System zum Absturz bringt, führt Google jetzt die beiden Zahlen durch die Java-Funktion "Integer.compare". Dies gibt nur -1, 0 oder 1 zurück, was auf ein kleineres, identisches oder größeres Vergleichsergebnis hinweist.

    Wenn Sie wie ich zuerst sind und sich fragen, warum Android überhaupt Telefonkonten sortiert, anstatt Wenn ich nur das Standardkonto auf der SIM-Karte verwende, werde ich eine wilde Vermutung anstellen und sagen, dass dies ein Versuch war, 911 auf jeden Fall zum Laufen zu bringen. Nur für den Fall, dass das Hauptkonto nicht funktioniert, möchte Android eine Liste aller möglichen Telefonkonten, die es ausprobieren kann, und dies möchte es automatisch tun, um sich mit allen erforderlichen Mitteln mit 911 zu verbinden. Dieses Sortiersystem existiert nur für die Kontaktaufnahme mit Notdiensten, weshalb regelmäßige Telefonate für die betroffenen Benutzer weiterhin funktionieren.

    Ein dritter Fehler in diesem Chaos ist, dass sich Microsoft Teams nicht einmal als Notrufabwickler registriert . Teams erstellten eine Million Telefonkonten und verwendeten nicht das Flag "CAPABILITY_PLACE_EMERGENCY_CALLS", aber es brach immer noch die Notrufnummer 911. Der Sortierprozess von Google beginnt mit der Abfrage aller Telefonkonten, wenn ein besserer erster Schritt darin besteht, mit allen notruffähigen Telefonkonten zu beginnen. Google geht eine noch drastischere Lösung für diesen letzten Fehler und streicht jedes "selbstverwaltete" Telefonkonto aus der Notrufprozedur des Systems. "Selbstverwaltete" Android-Telefonkonten wie Microsoft Teams erhalten direkteren Zugriff auf den Android-Telefonie-Stack und können ihre eigenen Funktionen ausführen. Das Android-Notrufsystem berücksichtigt jetzt nur noch einfachere Telefonieanbieter, die sich in die Standard-Telefon-App einklinken, wie beispielsweise Ihr Mobilfunkanbieter-Konto. All diese anderen VoIP-Apps können wahrscheinlich immer noch verwendet werden, um den Notruf selbst zu kontaktieren (in vielen Ländern ist die Notruffunktion gesetzlich vorgeschrieben). Aber wenn Sie den Standard-Dialer öffnen und "911" drücken, wählt Android nur aus standardisierten, vom System verwalteten Telefonkonten.

    Werbung

    Wer wird gepatcht und wie Sie nach dem 911-Fehler suchen können< /h2>

    Rahman sagt, dass der Fehler von Google dafür CVE-2021-39659 ist, den das monatliche Security Bulletin als hochgradige „Denial-of-Service“-Sicherheitslücke mit Patches für Geräte mit Android 10, 11 und 12 kategorisiert der Android-Codebasis, Google portiert diesen Fix sogar auf Android 8.0 zurück, das technisch nicht mehr unterstützt wird. Dies ist meist rein theoretisch, da keine Hersteller Sicherheitsupdates auf so alte Geräte übertragen. Aber der Code ist da, falls ihn jemand haben möchte.

    Der Telefonie-Stack von Android ist (noch?) kein leicht aktualisierbares Project Mainline-Modul, daher ist die einzige Möglichkeit, eine Lösung zu erhalten, über das Android-Gerät im Januar 2022 monatlich Sicherheitsupdate. Samsung sollte ab dieser Woche jedes Smartphone auf dieser Liste aktualisieren, während Google Fehlerbehebungen für Pixel 3a, 4, 4a, 5 und 5a herausgibt.

    Für Pixel 6 ist noch kein Update verfügbar . Das neueste Flaggschiff von Google durchlebt derzeit eine kleine Update-Krise. Das Update vom Dezember 2021 wurde aufgrund von nicht zusammenhängenden "Problemen mit der mobilen Konnektivität" zurückgezogen (Telefonanrufe funktionieren nicht). Während Google versucht, alles zu reparieren, ist das nächste Pixel 6-Update mit diesem 911-Fix "Ende Januar" fällig. Bis dahin ist es normal, den November-Patch zu haben. Sowohl die Patch-Zeitleisten für "Anfang Januar" als auch für "Ende Januar" von Google scheinen unglaublich langsam für einen Fehler zu sein, der dazu führen könnte, dass Benutzer buchstäblich sterben.

    Ich stelle eine weitere wilde Vermutung an und sage, dass das Pixel 6 das Seltsame ist telefonieren, weil es sich um einen völlig anderen SoC und ein anderes Modem handelt (beide von Samsungs Exynos-Abteilung, während jedes andere Pixel Qualcomm verwendet). Die Weihnachtseinkaufssaison ließ Google nicht viel Spielraum für Verzögerungen beim Start. Das macht es für ein Telefon mit dem großen Verkaufsargument von Day-One-Updates nicht weniger enttäuschend, aber hoffentlich ist dies ein vorübergehendes Problem.

    Ich bin erstaunt, dass dies nur ein "High" ist " Schweregrad des Fehlers (statt "kritisch") und dass die Einführung ein bis zwei Monate dauert. Das Verzögern eines Krankenwagens könnte tödlich sein, daher wäre es schön, wenn all dies schneller ankommt, anstatt wie Google mit dem Problem umgeht.

    Ich habe eine Anwendung geschrieben, die hilft, @Androids zu erkennen und zu verhindern Fehler beim letzten Notruf funktioniert nicht. Weitere Informationen finden Sie im Thread https://techbord.com باگ کابوس‌آمیز اندروید را که کاربر را از با 911 می‌کرد، برطرف کرد

    Neueste Nachrichten aus dem Gadgets