91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個“黑點”表情,會造成當(dāng)前程序卡死崩潰?

454398 ? 作者:工程師吳畏 ? 2018-06-13 10:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

幾乎每過一段時間,iOS上就會出現(xiàn)一些神秘消息“代碼”,發(fā)送相關(guān)文本將導(dǎo)致系統(tǒng)或者聊天APP崩潰。筆者還記得去年在微信上還出現(xiàn)了,發(fā)送“15個句號”導(dǎo)致某些品牌的手機卡死的BUG。其中這些多與系統(tǒng)或者程序的文本渲染器有關(guān),而Youtube UP主Tom Scott發(fā)現(xiàn),安卓上也中招了。

簡單來說,如圖所示的這個“黑點”表情,發(fā)送和接收都沒有問題,但當(dāng)點擊它的時候,就會造成當(dāng)前程序卡死崩潰,老外反饋主要是Whatsapp。

Tom Scott分析后發(fā)現(xiàn),這又是一次Unicode的把戲。Unicode是計算機之間傳輸文本的國際標(biāo)準,包含數(shù)以萬計的字符,并且支持N種語言。

不過,在Unicode之中也有一些隱形的字符,比如定義寬度、定義從左向右(從右向左,阿拉伯/希伯來語使用)、定義連接詞、定義高低音的代碼。這個黑點的“詭計”就在于,使用OBJ編碼后發(fā)現(xiàn),我們看到的黑點之后其實還有一長串字符,編造者使用寬度為0、且定義左右順序的字符進行了隱藏。

當(dāng)你點擊時,安卓的文本渲染器需要判斷你點擊的是哪個,這個過程存在BUG,導(dǎo)致程序崩潰。

所以,嚴格來講,這是安卓系統(tǒng)的BUG,理論上對于任何安卓消息應(yīng)用都有效,不僅僅是Whatsapp;第二,其實黑點只是創(chuàng)造者利用的一個表情而已,如果掌握了原理,這個表情可以任意替換。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • iOS
    iOS
    +關(guān)注

    關(guān)注

    8

    文章

    3401

    瀏覽量

    155527
  • 安卓
    +關(guān)注

    關(guān)注

    5

    文章

    2184

    瀏覽量

    60299
  • BUG
    BUG
    +關(guān)注

    關(guān)注

    0

    文章

    156

    瀏覽量

    16276
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    LAT1596 文說明白 STM32G4 雙 Bank 啟動與升級

    STM32G4 系列 MCU 越來越多的應(yīng)用在數(shù)字電源項目中,客戶希望軟件升級的過程中,不影響當(dāng)前程序的執(zhí)行或者盡量減少打斷當(dāng)前程序執(zhí)行的時間,本文介紹 STM32G4 的雙Bank 特性以及應(yīng)用該
    發(fā)表于 03-11 10:47 ?0次下載

    實戰(zhàn)排障|RK平臺啟動卡死、SPL崩潰,兩行日志直接定位DDR硬件死穴!

    在嵌入式Linux產(chǎn)品開發(fā)中,U-Boot SPL啟動崩潰、主板不上電、啟動卡死在初始化階段是最讓人頭疼的硬故障之。日志亂碼、CPU異常復(fù)位、看不到完整啟動流程,往往讓軟件工程師誤以為是代碼BUG,硬件工程師無從下手。
    的頭像 發(fā)表于 02-24 15:22 ?819次閱讀
    實戰(zhàn)排障|RK平臺啟動<b class='flag-5'>卡死</b>、SPL<b class='flag-5'>崩潰</b>,兩行日志直接定位DDR硬件死穴!

    華陽集團榮獲前程無憂2026杰出雇主稱號

    2026年1月8日,前程無憂正式發(fā)布“2026人力資源管理杰出獎”暨“2026杰出雇主”榜單,華陽集團榮獲“2026杰出雇主”榮譽稱號。
    的頭像 發(fā)表于 01-13 17:31 ?1330次閱讀

    CW32F030的FLASH存儲器支持擦寫PC頁的保護功能

    CW32F030 的 FLASH 存儲器支持擦寫 PC 頁保護功能。 當(dāng)用戶程序運行 FLASH 時,如果當(dāng)前程序指針 PC 正好位于待擦寫的 FLASH 地址頁范圍內(nèi),則該擦寫操作失敗,同時
    發(fā)表于 12-11 07:38

    睿擎平臺CoreDump實戰(zhàn)指南:系統(tǒng)崩潰現(xiàn)場的完美捕獲 | 技術(shù)解析

    在嵌入式系統(tǒng)開發(fā)中,系統(tǒng)崩潰往往是最令人頭疼的問題之。當(dāng)程序突然宕機、出現(xiàn)硬故障或斷言失敗時,如何快速定位根本原因?CoreDump技術(shù)為開發(fā)者提供了種「時間凍結(jié)」的能力,能在系統(tǒng)
    的頭像 發(fā)表于 10-29 16:58 ?4101次閱讀
    睿擎平臺CoreDump實戰(zhàn)指南:系統(tǒng)<b class='flag-5'>崩潰</b>現(xiàn)場的完美捕獲 | 技術(shù)解析

    關(guān)于蜂鳥E203內(nèi)核中斷硬件實現(xiàn)中斷嵌套的設(shè)計

    開發(fā)板:MCU200T 中斷機制即處理器核在執(zhí)行程序指令流的過程中突然被別的請求打斷而中止執(zhí)行當(dāng)前程序,轉(zhuǎn)而處理別的事情,處理完重新回到之前程序終端的位置繼續(xù)執(zhí)行。處理器收到中斷請求,保存當(dāng)前
    發(fā)表于 10-23 07:07

    mailbox和消息隊列 recv兩次會卡死怎么解決?

    , &data, 1, 500); rt_pin_write(LED0_PIN, PIN_HIGH); // 第二次設(shè)置的超時時間無效卡死在這里 rt = rt_mq_recv(g_mqt
    發(fā)表于 09-19 06:26

    wiznet+w5500程序卡死怎么解決?

    , &arg)函數(shù)無效,于是想到手動關(guān)閉端口,在link status becomes link down處添加closesocket后程序卡死,進步調(diào)試發(fā)現(xiàn)在任何地方調(diào)用
    發(fā)表于 09-10 06:48

    真隨機數(shù)和偽隨機數(shù)的區(qū)別

    隨機數(shù)在當(dāng)前程序運行環(huán)境中是種常用參數(shù),目前主要分為兩種,偽隨機數(shù)和真隨機數(shù),本期我們就來講下二者的區(qū)別。
    的頭像 發(fā)表于 08-27 17:46 ?2659次閱讀

    M058多次寫入數(shù)據(jù)閃存崩潰怎么解決?

    我的 m058 沒有作系統(tǒng),W/R dataflash 成功了,但是有問題:寫入 dataflash 多次 m058 崩潰,請問如何解決這個問題? 代碼如下: int32_t
    發(fā)表于 08-27 08:21

    STM32G473進行雙bank升級的時候,進行FLASH的批量擦除回卡死是怎么回事?

    我在進行雙bank升級的時候,先進行FLASH的批量擦除。在連續(xù)的升級過程中發(fā)現(xiàn)成功幾次后出現(xiàn)了執(zhí)行擦除flash操作時程序卡死的情況,直觀上看燈沒有閃爍。成功次數(shù)不規(guī)律,可能更新2次后才
    發(fā)表于 06-18 08:04

    STM32G473 flash擦除時程序卡死,為什么?

    我在進行雙bank升級的時候,先進行FLASH的批量擦除。在連續(xù)的升級過程中發(fā)現(xiàn)成功幾次后出現(xiàn)了執(zhí)行擦除flash操作時程序卡死的情況,直觀上看燈沒有閃爍。成功次數(shù)不規(guī)律,可能更新2次后才
    發(fā)表于 06-12 08:05

    STM32G473 flash擦除時程序卡死的原因?

    我在進行雙bank升級的時候,先進行FLASH的批量擦除。在連續(xù)的升級過程中發(fā)現(xiàn)成功幾次后出現(xiàn)了執(zhí)行擦除flash操作時程序卡死的情況,直觀上看燈沒有閃爍。成功次數(shù)不規(guī)律,可能更新2次后才
    發(fā)表于 06-09 07:23

    如何避免存儲示波器再次崩潰?

    為避免存儲示波器再次崩潰,需從系統(tǒng)維護、硬件管理、操作規(guī)范和應(yīng)急預(yù)案四維度構(gòu)建完整的防護體系。以下是具體措施及實施要點:、系統(tǒng)與軟件層面1. 固件與軟件管理 定期更新固件 操作:每6
    發(fā)表于 05-23 14:47

    國科微榮獲前程無憂“2025杰出雇主”稱號

    近日,前程無憂2025年人力資源管理杰出獎頒獎盛典暨高峰論壇在廈門舉行。在此之前公布的2025人力資源管理杰出獎榜單中,國科微憑借其卓越的人才發(fā)展戰(zhàn)略、完善的人才培養(yǎng)體系以及多元包容的企業(yè)文化,榮獲
    的頭像 發(fā)表于 04-21 17:46 ?1057次閱讀