Chrome браузерін url-дегі бірнеше символ арқылы құлатуға болады



Google Chrome және оның негізінде жұмыс жасайтын браузерлерде өте қарапайым бірақ тиімді қаіпсіздік ақаулығы табылды. URL адресінің соңына бірнеше символ қоссаңыз болды, ол бүкіл браузердің немесе жекелеген вкладкалардың құлауына алып келеді. Ондай сілтемелерге шертудің де қажеті жоқ тек курсорды сол сілтемеге апарсаңыз болды. Баг әліге дейін түзелмеген.

Мұндай ақаулықты қауіпсіздік маманы Андрис Аттека тапқан, ол оны өз блогында жазып өтті.

Мұндай ақаудың болуы өте қарапайым жағдайға байланысты. Егер кез-келген сілтеменің соңына %%300 символдарын қоссақ, URL %00 түріне өзгертіледі (конверттеледі). 0х30, бұл ASCII бойынша «0». Осылайша, %%300 символы шынайы "%", конверттелген «0» және шынайы «0» болып түрленеді. Барлығы бірге %00 болады, яғни символдың соңына NULL байт қосылады. Кейін сілтеме GURLToDatabaseURL() және ReplaceComponents() функцияларынан өтеді. Соңы NULL болғандықтан сілтемені браузер қайтадан өңдеуден өткізеді, браузер сілтеменің дұрыс емес екенін байқап, оны жарамсыз деп белгілейді де GURLToDatabaseURL()-ға қайтарады, ол өз кезегінде жұмыс жасайтын, жарамды сілтемені күтеді. Бірақ сілтеме жұмыс жасамайды, осы өз кезегінде DCHECK() шақырады, ал одан соң браузер құлайды.

Байқаңыз! Төмендегі сілтемелерге курсорды апарсаңыз вкладкаңыз жұмысын тоқтатады.

Осындай сілтеменің ең қарапайым мысалы: http://a/%%30%30. Бар жоғы 16 символ және браузердің құлауы. Дәл осындай әдіспен %%300 немесе %%30%30 символдарын кез-келген сілтемеге қосуға болады. Мысалыға: //codeo.kz/%%30%30

Егер мұндай сілтемені шертпестен, жай курсорды апарсаңыз вкладканың жұмысы тоқтайды. Егер шертсеңіз бүкіл браузер.

Баг Chrome, Chromium негізінде жұмыс жасайтын Opera, IE браузерлерінде байқалған.

Google мамандары әлі багты түзеген жоқ. А пайдаланушылар боса баг негізінде қарапайы ойын құрастырып үлгерген. Курсорды ағаштарға тигізбей аюлардың үстінен өткізу керек. Егер ағашқа тиіп кетсеңіз вкладка құлайды.

Түпнұсқа.

  • 0
0 пікір
Тек тіркелген қолданушылар ғана пікір қалдыра алады.