Skip to content

Stack overflow in array? #23111

Description

@djarfluka

Description

The following code:

<?php
$a=[]; for($i=0;$i<1000000;$i++){ $a=[$a]; }
array_walk_recursive($a, function($v){});

Resulted in this output:

    #206 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #207 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #208 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #209 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #210 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #211 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #212 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #213 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #214 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #215 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #216 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #217 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #218 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #219 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #220 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #221 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #222 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #223 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #224 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #225 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #226 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #227 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #228 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #229 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #230 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #231 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #232 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #233 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #234 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #235 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #236 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #237 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #238 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #239 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #240 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #241 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #242 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #243 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #244 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #245 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #246 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #247 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #248 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #249 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461
    #250 0x5624114af02b in php_array_walk /home/php-src/ext/standard/array.c:1461

SUMMARY: AddressSanitizer: stack-overflow ../../../../src/libsanitizer/sanitizer_common/sanitizer_stacktrace.h:52 in __sanitizer::StackTrace::StackTrace(unsigned long const*, unsigned int)
==24==ABORTING
USE_ZEND_ALLOC=0 php poc.php

PHP Version

8.6.0

Operating System

ubuntu 22.04

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions