Skip to content

Commit

Permalink
[CVE-2017-11919] An infoleak bug in the latest version of Edge - Qiho…
Browse files Browse the repository at this point in the history
…o 360

In ConstructName the finalName is copied over from propertyName which can contain null character in between. In that case part of finalName will remain uninitialized as we use RecyclerNewArrayLeaf to allocate finalName with the length of propertyName.
  • Loading branch information
aneeshdk authored and MikeHolman committed Dec 7, 2017
1 parent b488088 commit fde1643
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion lib/Runtime/Library/JavascriptObject.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1857,7 +1857,7 @@ namespace Js
size_t totalChars;
if (SizeTAdd(propertyLength, ConstructNameGetSetLength, &totalChars) == S_OK)
{
finalName = RecyclerNewArrayLeaf(scriptContext->GetRecycler(), char16, totalChars);
finalName = RecyclerNewArrayLeafZ(scriptContext->GetRecycler(), char16, totalChars);
Assert(finalName != nullptr);
const char16* propertyName = propertyRecord->GetBuffer();
Assert(propertyName != nullptr);
Expand Down

0 comments on commit fde1643

Please sign in to comment.