Instagram_RCE:Instagram APP遠(yuǎn)程代碼漏洞

來(lái)源: 嘶吼
作者:ang010ela
時(shí)間:2020-09-30
17440
Instagram APP安卓和iOS 版本被曝安全漏洞,攻擊者利用該漏洞可以使APP奔潰,甚至被用來(lái)監(jiān)聽(tīng)用戶(hù)。

研究人員在Facebook Instagram安卓和iOS版本APP中發(fā)現(xiàn)了一個(gè)高危漏洞,攻擊者利用該漏洞可以拒絕用戶(hù)訪(fǎng)問(wèn)APP,完全控制用戶(hù)賬戶(hù),甚至利用手機(jī)設(shè)備監(jiān)聽(tīng)用戶(hù)。

漏洞細(xì)節(jié)

該漏洞存在于Instagram處理圖像的方式中,從技術(shù)上將該漏洞是一個(gè)堆溢出漏洞(CVE-2020-1895),當(dāng)Instagram嘗試發(fā)送大一點(diǎn)的文件時(shí)會(huì)觸發(fā)該漏洞。攻擊者只需通過(guò)常見(jiàn)的消息平臺(tái)或郵件向攻擊目標(biāo)發(fā)送精心偽造的圖片就可以觸發(fā)該漏洞。

有漏洞的函數(shù)為read_jpg_copy_loop,會(huì)在解壓縮過(guò)程中引發(fā)整數(shù)溢出。

Mozjpeg-fuzz-intovfl-CheckPoint.png

Read_jpg_copy_loop代碼段

在處理JPEG圖像文件時(shí),有漏洞的函數(shù)會(huì)處理圖像尺寸。下面是有漏洞的代碼的偽代碼:

width=rect->right-rect->bottom;

height=rect->top-rect->left;

allocated_address=__wrap_malloc(width*height*cinfo->output_components);//output_scanline;

if((unsigned int)output_scanline>=cinfo->output_height)

break;

//reads one line from the file into the cinfo buffer

jpeg_read_scanlines(cinfo,line_buffer,1);

if(output_scanline>=Rect->left&&output_scanline<Rect->top)

{

memcpy(allocated_address+bytes_copied,line_buffer,width*output_component);//<--Oops

bytes_copied+=width*output_component;

}

}

其中:

_wrap_malloc函數(shù)會(huì)根據(jù)圖像尺寸的3個(gè)參數(shù)來(lái)分配內(nèi)存塊。Width和height都是16位的整數(shù)(uint16_t)。

cinfo->output_component告訴我們有多少個(gè)字節(jié)用來(lái)表示每個(gè)像素。變量的值分別代表不同的意思,1表示Greyscale、3表示RGB、4表示RGB+AlphaCMYK等。

除了height和width外,output_component也可以完全被攻擊者控制。因?yàn)樵诜治龅倪^(guò)程中并不會(huì)與文件中的其他數(shù)據(jù)進(jìn)行驗(yàn)證。

__warp_malloc希望其參數(shù)在32位的寄存器中進(jìn)行處理。也就是說(shuō)如果分配的大小超過(guò)(2^32)字節(jié),那么就可以引發(fā)整數(shù)溢出。

分配的大小是通過(guò)圖像的width乘height再乘以output_components得到的。因?yàn)闆](méi)有檢查,那么一旦被攻擊者所控制,進(jìn)一步濫用后就會(huì)引發(fā)整數(shù)溢出。

__wrap_malloc(width*height*cinfo->output_components);//<----Integer overflow

然后緩存被傳遞給memcpy,引發(fā)基于堆的緩存溢出。

分配后,memcpy函數(shù)會(huì)被調(diào)用,然后復(fù)制圖像數(shù)據(jù)到分配的內(nèi)存中。

復(fù)制的過(guò)程是一行一行進(jìn)行的:

memcpy(allocated_address+bytes_copied,line_buffer,width*output_component);//<--Oops

size(width*output_component)數(shù)據(jù)也會(huì)被復(fù)制height次。

為了引發(fā)內(nèi)存奔潰,還需要溢出決定分配大小的整數(shù),計(jì)算的結(jié)果必須要大于32比特。當(dāng)復(fù)制的數(shù)據(jù)大于2^32(4GB)時(shí),如果循環(huán)到了一個(gè)無(wú)法映射的頁(yè)面,程序大概率會(huì)奔潰:

image8.png

Instagram_RCE:Instagram APP遠(yuǎn)程代碼漏洞

漏洞利用

從漏洞利用的角度來(lái)看,一個(gè)線(xiàn)性堆溢出漏洞使得攻擊者可以控制分配的大小、溢出的數(shù)、以及溢出內(nèi)存區(qū)域的內(nèi)容。

攻擊者利用該漏洞可以按照如下步驟:

通過(guò)郵件、WhatsApp、短信等方式發(fā)送惡意圖片給受害者;

如果用戶(hù)保存圖片,并打開(kāi)Instagram APP,那么漏洞利用就開(kāi)始了,攻擊者就可以遠(yuǎn)程完全控制目標(biāo)手機(jī);

漏洞利用會(huì)使得受害者的Instagram APP持續(xù)奔潰,除非卸載后重新安裝。

InstaCrash.png

Instagram_RCE:Instagram APP遠(yuǎn)程代碼漏洞

補(bǔ)丁

Facebook已于今年春季修復(fù)了該漏洞,F(xiàn)acebook稱(chēng)沒(méi)有發(fā)現(xiàn)任何漏洞在野利用的跡象。

立即登錄,閱讀全文
版權(quán)說(shuō)明:
本文內(nèi)容來(lái)自于嘶吼,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
Instagram發(fā)布AI編輯工具,文本提示就能完全重塑視頻
Instagram發(fā)布AI編輯工具,文本提示就能完全重塑視頻
Instagram負(fù)責(zé)人Adam Mosseri 19日分享IG貼文視頻預(yù)告,Instagram計(jì)劃明年推出基于Meta Movie Gen AI模型的生成式AI編輯功能,用戶(hù)只需通過(guò)文本提示,便能大致更改視頻任何地方。
Instagram
2024-12-252024-12-25
Instagram全新視頻編輯工具 由AI驅(qū)動(dòng)明年推出
Instagram全新視頻編輯工具 由AI驅(qū)動(dòng)明年推出
Instagram預(yù)計(jì)將于明年推出全新視頻編輯功能,平臺(tái)負(fù)責(zé)人Adam Mosseri示范了這個(gè)工具,功能包括將人物的衣著改變和調(diào)整視頻背景,也可以添加動(dòng)畫(huà)角色等。這視頻編輯工具由人工智能驅(qū)動(dòng),用戶(hù)只要輸入文本即成。
Instagram
海外營(yíng)銷(xiāo)
2024-12-242024-12-24
全面解析Instagram廣告投放:從基礎(chǔ)到實(shí)踐
全面解析Instagram廣告投放:從基礎(chǔ)到實(shí)踐
Instagram作為全球最受歡迎的社交媒體平臺(tái)之一,為企業(yè)和品牌提供了豐富的廣告投放機(jī)會(huì)。以下將為你詳細(xì)介紹如何在Instagram上進(jìn)行廣告投放。
Instagram
廣告投放
海外營(yíng)銷(xiāo)
2024-12-192024-12-19
如何在Instagram上提升品牌曝光率?
如何在Instagram上提升品牌曝光率?
在如今的數(shù)字營(yíng)銷(xiāo)時(shí)代,Instagram已成為品牌推廣的重要平臺(tái)。隨著用戶(hù)數(shù)量的不斷增長(zhǎng),企業(yè)在Instagram上的品牌曝光率顯得尤為重要。
Instagram
海外營(yíng)銷(xiāo)
海外推廣
2024-12-182024-12-18
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪(fǎng)
投稿采訪(fǎng)
出海管家
出海管家