Quantcast
Channel: BOT24
Viewing all articles
Browse latest Browse all 8064

Paper: CROSS-AR­CHI­TEC­TU­RE BUG SE­ARCH IN BI­NA­RY EXE­CU­TA­BLES

$
0
0
With the ge­ne­ral avail­a­bi­li­ty of clo­sed-sour­ce soft­ware for va­rious CPU ar­chi­tec­tu­res, there is a need to iden­ti­fy se­cu­ri­ty-cri­ti­cal vul­nerabi­li­ties at the bi­na­ry level to per­form a vul­nerabi­li­ty as­sess­ment. Un­for­t­u­n­a­te­ly, exis­ting bug fin­ding me­thods fall short in that they i) re­qui­re sour­ce code, ii) only work on a sin­gle ar­chi­tec­tu­re (ty­pi­cal­ly x86), or iii) rely on dy­na­mic ana­ly­sis, which is in­her­ent­ly dif­fi­cult for em­bed­ded de­vices.
In this paper, we pro­po­se a sys­tem to de­ri­ve bug si­gna­tu­res for known bugs. We then use these si­gna­tu­res to find bugs in bi­na­ries that have been de­ploy­ed on dif­fe­rent CPU ar­chi­tec­tu­res (e.g., x86 vs. MIPS). The va­rie­ty of CPU ar­chi­tec­tu­res im­po­ses many chal­len­ges, such as the in­com­pa­ra­bi­li­ty of in­struc­tion set ar­chi­tec­tu­res bet­ween the CPU mo­dels. We solve this by first trans­la­ting the bi­na­ry code to an in­ter­me­dia­te re­pre­sen­ta­ti­on, re­sul­ting in as­si­gnment for­mu­las with input and out­put va­ria­bles. We then samp­le con­cre­te in­puts to ob­ser­ve the I/O be­ha­vi­or of basic blocks, which grasps their se­man­ti­cs. Fi­nal­ly, we use the I/O be­ha­vi­or to find code parts that be­ha­ve si­mi­lar­ly to the bug si­gna­tu­re, ef­fec­tive­ly re­vea­ling code parts that con­tain the bug.
We have de­si­gned and im­ple­men­ted a tool for cross-ar­chi­tec­tu­re bug se­arch in exe­cu­ta­bles. Our pro­to­ty­pe cur­rent­ly sup­ports three in­struc­tion set ar­chi­tec­tu­res (x86, ARM, and MIPS) and can find vul­nerabi­li­ties in buggy bi­na­ry code for any of these ar­chi­tec­tu­res. We show that we can find Heart­bleed vul­nerabi­li­ties, re­gard­less of the un­der­ly­ing soft­ware in­struc­tion set. Si­mi­lar­ly, we apply our me­thod to find back­doors in clo­sed-sour­ce firm­ware ima­ges of MIPS- and ARM-ba­sed rou­ters.

more here.........http://syssec.rub.de/media/emma/veroeffentlichungen/2015/03/28/XArchBugs-Oakland15.pdf

Viewing all articles
Browse latest Browse all 8064

Trending Articles