Skip to content

Xcode13 内部 fishhook崩溃 #24

Open
@hrk1988

Description

@hrk1988

使用设备
iPhone12 Pro Max iOS15.0 19A346
真机与模拟器都会崩溃

在Echo初始化方法hookNSLog里使用了fishhook加了一个钩子,调用rebind_symbols方法时产生了崩溃

崩溃日志
2021-09-22 17:31:40.746202+0800 [568:30569] [unspecified] An empty string is not a valid group container identifier.
2021-09-22 17:31:40.746230+0800 [568:30569] [unspecified] container_create_or_lookup_app_group_path_by_app_group_identifier: client sent invalid parameters

堆栈信息
frame #0: 0x00000001037220bc EchoDemoperform_rebinding_with_section(rebindings=0x0000000282c9cb40, section=0x000000010a7a8420, slide=4470767616, symtab=0x000000010a7d9bf0, strtab="", indirect_symtab=0x000000010a7ddb90) at fishhook.c:104:39 frame #1: 0x0000000103721da4 EchoDemorebind_symbols_for_image(rebindings=0x0000000282c9cb40, header=0x000000010a7a8000, slide=4470767616) at fishhook.c:169:11
frame #2: 0x0000000103721ed8 EchoDemo_rebind_symbols_for_image(header=0x000000010a7a8000, slide=4470767616) at fishhook.c:178:5 frame #3: 0x000000010a347930 dyldinvocation function for block in dyld4::APIs::_dyld_register_func_for_add_image(void ()(mach_header const, long)) + 200
frame #4: 0x000000010a3406f4 dylddyld4::RuntimeState::withLoadersReadLock(void () block_pointer) + 92 frame #5: 0x000000010a3697f8 dylddyld4::APIs::_dyld_register_func_for_add_image(void ()(mach_header const, long)) + 148
frame #6: 0x0000000103721e48 EchoDemorebind_symbols(rebindings=0x000000016f2146e0, rebindings_nel=1) at fishhook.c:200:5 frame #7: 0x0000000101124890 EchoDemo-[ECONSLogManager hookNSLog](self=0x0000000282c9cb00, _cmd="hookNSLog") at ECONSLogManager.m:70:5
frame #8: 0x00000001011247f8 EchoDemo`-[ECONSLogManager init](self=0x0000000282c9cb00, _cmd="init") at ECONSLogManager.m:48:9

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions