// https://syzkaller.appspot.com/bug?id=4f36c64d689777b926d4dc807a85fd3f7dca5ae6 // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include int main(void) { syscall(SYS_mmap, /*addr=*/0x200000000000ul, /*len=*/0x1000000ul, /*prot=PROT_WRITE|PROT_READ|PROT_EXEC*/ 7ul, /*flags=MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE*/ 0x1012ul, /*fd=*/-1, /*offset=*/0ul); const char* reason; (void)reason; if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { } *(uint32_t*)0x200000000000 = 0x5c8951ac; *(uint32_t*)0x200000000004 = 0x3bea9983; *(uint16_t*)0x200000000008 = 0; *(uint16_t*)0x20000000000a = 0; memcpy((void*)0x20000000000c, "\x0a\x00\x00\x00\x9a\x16\x5d\x59\x00\x00\x00\x00\x00\x00\x00\x00", 16); syscall(SYS_fhopen, /*fhp=*/0x200000000000ul, /*flags=O_PATH|O_DIRECT|O_WRONLY*/ 0x410001ul); return 0; }