Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CryptoDotComAPIBrowserTest.NewTabHasCryptoDotComAPIAccess asan failure #12923

Closed
iefremov opened this issue Nov 27, 2020 · 0 comments · Fixed by brave/brave-core#7262
Closed
Assignees
Labels
asan OS/Desktop priority/P2 A bad problem. We might uplift this to the next planned release. QA/No release-notes/exclude

Comments

@iefremov
Copy link
Contributor

npm run test -- brave_browser_tests --filter=CryptoDotComAPIBrowserTest.NewTabHasCryptoDotComAPIAccess

=================================================================
==2564==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x0045ceaf6d18 at pc 0x7ff6084427a9 bp 0x0045ceaf6c00 sp 0x0045ceaf6c48
READ of size 8 at 0x0045ceaf6d18 thread T0
==2564==*** WARNING: Failed to initialize DbgHelp! ***
==2564==*** Most likely this means that the app is already ***
==2564==*** using DbgHelp, possibly with incompatible flags. ***
==2564==*** Due to technical reasons, symbolization might crash ***
==2564==*** or produce wrong results. ***
#0 0x7ff6084427a8 in WeeklyStorage::GetHighestValueInWeek D:\b\3brave\src\brave\components\weekly_storage\weekly_storage.cc:96
#1 0x7ff60ad5f6f3 in ntp_background_images::ViewCounterService::UpdateP3AValues D:\b\3brave\src\brave\components\ntp_background_images\browser\view_counter_service.cc:294
#2 0x7ff60ad60187 in ntp_background_images::ViewCounterService::RegisterPageView D:\b\3brave\src\brave\components\ntp_background_images\browser\view_counter_service.cc:213
#3 0x7ff8642bf293 in content::WebUIImpl::ProcessWebUIMessage D:\b\3brave\src\content\browser\webui\web_ui_impl.cc:286
#4 0x7ff8642bb87a in content::WebUIImpl::Send D:\b\3brave\src\content\browser\webui\web_ui_impl.cc:127
#5 0x7ff861bda851 in content::mojom::WebUIHostStubDispatch::Accept D:\b\3brave\src\out\Component\gen\content\common\web_ui.mojom.cc:151
#6 0x7ff8b0f34956 in mojo::InterfaceEndpointClient::HandleValidatedMessage D:\b\3brave\src\mojo\public\cpp\bindings\lib\interface_endpoint_client.cc:554
#7 0x7ff8b0f41706 in mojo::MessageDispatcher::Accept D:\b\3brave\src\mojo\public\cpp\bindings\lib\message_dispatcher.cc:41
#8 0x7ff8b0f384c4 in mojo::InterfaceEndpointClient::HandleIncomingMessage D:\b\3brave\src\mojo\public\cpp\bindings\lib\interface_endpoint_client.cc:356
#9 0x7ff8b0f5018f in mojo::internal::MultiplexRouter::ProcessIncomingMessage D:\b\3brave\src\mojo\public\cpp\bindings\lib\multiplex_router.cc:955
#10 0x7ff8b0f4efc4 in mojo::internal::MultiplexRouter::Accept D:\b\3brave\src\mojo\public\cpp\bindings\lib\multiplex_router.cc:622
#11 0x7ff8b0f41706 in mojo::MessageDispatcher::Accept D:\b\3brave\src\mojo\public\cpp\bindings\lib\message_dispatcher.cc:41
#12 0x7ff8b0f1d82d in mojo::Connector::DispatchMessageW D:\b\3brave\src\mojo\public\cpp\bindings\lib\connector.cc:503
#13 0x7ff8b0f1f870 in mojo::Connector::ReadAllAvailableMessages D:\b\3brave\src\mojo\public\cpp\bindings\lib\connector.cc:561
#14 0x7ff8b0f1f1d7 in mojo::Connector::OnHandleReadyInternal D:\b\3brave\src\mojo\public\cpp\bindings\lib\connector.cc:402
#15 0x7ff8b48bc4a3 in mojo::SimpleWatcher::OnHandleReady D:\b\3brave\src\mojo\public\cpp\system\simple_watcher.cc:272
#16 0x7ff87100a332 in base::TaskAnnotator::RunTask D:\b\3brave\src\base\task\common\task_annotator.cc:163
#17 0x7ff87106c432 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl D:\b\3brave\src\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:332
#18 0x7ff87106b989 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork D:\b\3brave\src\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:252
#19 0x7ff871194b7a in base::MessagePumpForUI::DoRunLoop D:\b\3brave\src\base\message_loop\message_pump_win.cc:224
#20 0x7ff871191718 in base::MessagePumpWin::Run D:\b\3brave\src\base\message_loop\message_pump_win.cc:80
#21 0x7ff87106e05f in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run D:\b\3brave\src\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:446
#22 0x7ff870f948da in base::RunLoop::Run D:\b\3brave\src\base\run_loop.cc:124
#23 0x7ff60ae811fa in content::DOMMessageQueue::WaitForMessage D:\b\3brave\src\content\public\test\browser_test_utils.cc:2469
#24 0x7ff60ae789a1 in content::`anonymous namespace'::ExecuteScriptHelper D:\b\3brave\src\content\public\test\browser_test_utils.cc:184
#25 0x7ff60ae79255 in content::ExecuteScriptAndExtractBool D:\b\3brave\src\content\public\test\browser_test_utils.cc:1295
#26 0x7ff604f07613 in CryptoDotComAPIBrowserTest_NewTabHasCryptoDotComAPIAccess_Test::RunTestOnMainThread D:\b\3brave\src\brave\components\crypto_dot_com\browser\crypto_dot_com_service_browsertest.cc:444
#27 0x7ff60ae623a5 in content::BrowserTestBase::ProxyRunTestOnMainThreadLoop D:\b\3brave\src\content\public\test\browser_test_base.cc:762
#28 0x7ff604e55744 in base::OnceCallback<void ()>::Run D:\b\3brave\src\base\callback.h:100
#29 0x7ff609f2712d in ChromeBrowserMainParts::PreMainMessageLoopRunImpl D:\b\3brave\src\chrome\browser\chrome_browser_main.cc:1664
#30 0x7ff609f2484b in ChromeBrowserMainParts::PreMainMessageLoopRun D:\b\3brave\src\chrome\browser\chrome_browser_main.cc:1033
#31 0x7ff862d57e30 in content::BrowserMainLoop::PreMainMessageLoopRun D:\b\3brave\src\content\browser\browser_main_loop.cc:993
#32 0x7ff8640400bc in base::OnceCallback<int ()>::Run D:\b\3brave\src\base\callback.h:100
#33 0x7ff86403ff0d in content::StartupTaskRunner::RunAllTasksNow D:\b\3brave\src\content\browser\startup_task_runner.cc:41
#34 0x7ff862d54eaf in content::BrowserMainLoop::CreateStartupTasks D:\b\3brave\src\content\browser\browser_main_loop.cc:903
#35 0x7ff862d5e918 in content::BrowserMainRunnerImpl::Initialize D:\b\3brave\src\content\browser\browser_main_runner_impl.cc:130
#36 0x7ff862d4fd87 in content::BrowserMain D:\b\3brave\src\content\browser\browser_main.cc:43
#37 0x7ff8651689c8 in content::RunBrowserProcessMain D:\b\3brave\src\content\app\content_main_runner_impl.cc:507
#38 0x7ff86516b18b in content::ContentMainRunnerImpl::RunServiceManager D:\b\3brave\src\content\app\content_main_runner_impl.cc:979
#39 0x7ff86516a467 in content::ContentMainRunnerImpl::Run D:\b\3brave\src\content\app\content_main_runner_impl.cc:858
#40 0x7ff8651670bf in content::RunContentProcess D:\b\3brave\src\content\app\content_main.cc:373
#41 0x7ff8651675f0 in content::ContentMain D:\b\3brave\src\content\app\content_main.cc:399
#42 0x7ff60ae6140d in content::BrowserTestBase::SetUp D:\b\3brave\src\content\public\test\browser_test_base.cc:599
#43 0x7ff609e0675c in InProcessBrowserTest::SetUp D:\b\3brave\src\chrome\test\base\in_process_browser_test.cc:331
#44 0x7ff60556c5c5 in testing::Test::Run D:\b\3brave\src\third_party\googletest\src\googletest\src\gtest.cc:2684
#45 0x7ff60556df83 in testing::TestInfo::Run D:\b\3brave\src\third_party\googletest\src\googletest\src\gtest.cc:2866
#46 0x7ff60556f83b in testing::TestSuite::Run D:\b\3brave\src\third_party\googletest\src\googletest\src\gtest.cc:3020
#47 0x7ff605587384 in testing::internal::UnitTestImpl::RunAllTests D:\b\3brave\src\third_party\googletest\src\googletest\src\gtest.cc:5730
#48 0x7ff605586862 in testing::UnitTest::Run D:\b\3brave\src\third_party\googletest\src\googletest\src\gtest.cc:5313
#49 0x7ff609eb6485 in base::TestSuite::Run D:\b\3brave\src\base\test\test_suite.cc:480
#50 0x7ff60fee094c in ChromeTestSuiteRunner::RunTestSuite D:\b\3brave\src\chrome\test\base\chrome_test_launcher.cc:86
#51 0x7ff60c6f10c8 in content::LaunchTests D:\b\3brave\src\content\public\test\test_launcher.cc:372
#52 0x7ff60fee14af in LaunchChromeTests D:\b\3brave\src\chrome\test\base\chrome_test_launcher.cc:245
#53 0x7ff60fee0741 in main D:\b\3brave\src\brave\test\base\browser_tests_main.cc:36
#54 0x7ff610235063 in __scrt_common_main_seh d:\A01_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
#55 0x7ff8c8417033 in BaseThreadInitThunk+0x13 (C:\WINDOWS\System32\KERNEL32.DLL+0x180017033)
#56 0x7ff8c895cec0 in RtlUserThreadStart+0x20 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x18004cec0)

Address 0x0045ceaf6d18 is located in stack of thread T0 at offset 152 in frame
#0 0x7ff608442175 in WeeklyStorage::GetHighestValueInWeek D:\b\3brave\src\brave\components\weekly_storage\weekly_storage.cc:79

This frame has 4 object(s):
[32, 40) 'ref.tmp.i'
[64, 72) 'ref.tmp2.i'
[96, 104) 'ref.tmp' (line 82)
[128, 152) 'last_weeks_daily_values' (line 83) <== Memory access at offset 152 overflows this variable
HINT: this may be a false positive if your program uses some custom stack unwind mechanism, swapcontext or vfork
(longjmp, SEH and C++ exceptions are supported)
SUMMARY: AddressSanitizer: stack-buffer-overflow D:\b\3brave\src\brave\components\weekly_storage\weekly_storage.cc:96 in WeeklyStorage::GetHighestValueInWeek
Shadow bytes around the buggy address:
0x018600c5ed50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5ed60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5ed70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5ed80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5ed90: f1 f1 f1 f1 f8 f2 f2 f2 f8 f2 f2 f2 f8 f2 f2 f2
=>0x018600c5eda0: 00 00 00[f3]f3 f3 f3 f3 00 00 00 00 00 00 00 00
0x018600c5edb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5edc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5edd0: 00 00 00 00 00 00 00 00 f1 f1 f1 f1 f8 f2 f2 f2
0x018600c5ede0: f8 f3 f3 f3 00 00 00 00 00 00 00 00 00 00 00 00
0x018600c5edf0: 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 00 f2 f2
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9 15:40
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
Shadow gap: cc
==2564==ABORTING
[1/1] CryptoDotComAPIBrowserTest.NewTabHasCryptoDotComAPIAccess (CRASHED)
1 test crashed:
CryptoDotComAPIBrowserTest.NewTabHasCryptoDotComAPIAccess (../../brave/components/crypto_dot_com/browser/crypto_dot_com_service_browsertest.cc:441)
null

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
asan OS/Desktop priority/P2 A bad problem. We might uplift this to the next planned release. QA/No release-notes/exclude
Projects
None yet
1 participant