<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CVE-2019-5782 on Arzedlab 🪵</title><link>https://arzedlab.github.io/tags/cve-2019-5782/</link><description>Recent content in CVE-2019-5782 on Arzedlab 🪵</description><generator>Hugo</generator><language>en-us</language><copyright>© Ravshan</copyright><lastBuildDate>Fri, 01 Dec 2023 13:13:13 +0500</lastBuildDate><atom:link href="https://arzedlab.github.io/tags/cve-2019-5782/index.xml" rel="self" type="application/rss+xml"/><item><title>CVE-2019-5782 Out-Of-Bounds V8</title><link>https://arzedlab.github.io/posts/cve-2019-5782-oob-v8-f710491993d8478483ca99402710ec07/</link><pubDate>Fri, 01 Dec 2023 13:13:13 +0500</pubDate><guid>https://arzedlab.github.io/posts/cve-2019-5782-oob-v8-f710491993d8478483ca99402710ec07/</guid><description>&lt;h1 id="cve-2019-5782--oob-v8">CVE-2019-5782 | OOB V8&lt;/h1>
&lt;h1 id="research-done-by-ravshan-rikhsiev-2023">Research Done By &lt;strong>Ravshan Rikhsiev&lt;/strong> (2023)&lt;/h1>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>&lt;strong>Type Of Vulnerability&lt;/strong>&lt;/th>
 &lt;th>&lt;strong>Out-Of-Bounds&lt;/strong>&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>&lt;strong>Security Severity&lt;/strong>&lt;/td>
 &lt;td>&lt;strong>High&lt;/strong>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Effected Components&lt;/strong>&lt;/td>
 &lt;td>&lt;strong>Javascript, Turbofan, Compiler&lt;/strong>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Issue Source&lt;/strong>&lt;/td>
 &lt;td>&lt;a href="https://bugs.chromium.org/p/chromium/issues/detail?id=906043">https://bugs.chromium.org/p/chromium/issues/detail?id=906043&lt;/a>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Writeup Source(s)&lt;/strong>&lt;/td>
 &lt;td>None&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Tested Version&lt;/strong>&lt;/td>
 &lt;td>V8 7.3.0&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Vulnerable commit&lt;/strong>&lt;/td>
 &lt;td>18b28402118b7918512c3e5b6bc5c6f348d43564&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h1 id="building">Building&lt;/h1>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>mkdir v8
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#8be9fd;font-style:italic">cd&lt;/span> v8
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>fetch v8
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#8be9fd;font-style:italic">cd&lt;/span> v8
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#6272a4"># Moving into vulnerable commit&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout 18b28402118b7918512c3e5b6bc5c6f348d43564
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#6272a4"># Sync depot tools&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>gclient sync -D
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#6272a4"># Installing dependencies &lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>build/install-build-deps.sh
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#6272a4"># Installing ninja to build&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt install -y ninja-build
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#6272a4"># Release and Debug versions of V8&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tools/dev/gm.py x64.release; tools/dev/gm.py x64.debug
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h1 id="incorrect-optimization-assumptions-in-v8">&lt;strong>Incorrect optimization assumptions in V8&lt;/strong>&lt;/h1>
&lt;p>&lt;strong>Turbofan&lt;/strong> is an optimizing compiler in the &lt;strong>V8&lt;/strong> JavaScript engine. It translates JavaScript code into highly optimized machine code for better performance. It uses various techniques, such as inlining functions, optimizing data types, and eliminating unnecessary operations, to generate efficient code. This helps improve the execution speed of JavaScript programs running in V8.&lt;/p></description></item></channel></rss>