Skip to content
This repository has been archived by the owner on Jan 25, 2024. It is now read-only.

插件版qsign运行一段时间后出现异常 #23

Open
mikko-mikust opened this issue Nov 6, 2023 · 3 comments
Open

插件版qsign运行一段时间后出现异常 #23

mikko-mikust opened this issue Nov 6, 2023 · 3 comments

Comments

@mikko-mikust
Copy link

mikko-mikust commented Nov 6, 2023

使用的是最新的构建
win+JDK17
协议文件8.9.85
正常运行一段时间后,发消息可能会出如下异常然后直接退出

> Assertion failed: subregion->container == mr, file C:/msys64/home/Banny/git/unicorn/qemu/memory.c, line 1329
2023-11-06 22:48:24 W/com.github.unidbg.linux.ARM64SyscallHandler: handleInterrupt intno=2, NR=-128160, svcNumber=0x1ad, PC=unidbg@0xfffe0b64, LR=RX@0x400a07d4[libfekit.so]0xa07d4, syscall=null
com.github.unidbg.arm.backend.BackendException: mem_write address=0x40a26000
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.Unicorn2Backend.mem_write(Unicorn2Backend.java:129)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.pointer.UnidbgPointer.write(UnidbgPointer.java:180)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.linux.android.dvm.array.ByteArray._GetArrayCritical(ByteArray.java:34)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.linux.android.dvm.DalvikVM64$174.handle(DalvikVM64.java:2761)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.linux.ARM64SyscallHandler.hook(ARM64SyscallHandler.java:121)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.Unicorn2Backend$11.hook(Unicorn2Backend.java:347)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.unicorn.Unicorn$NewHook.onInterrupt(Unicorn.java:109)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.unicorn.Unicorn.emu_start(Native Method)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.unicorn.Unicorn.emu_start(Unicorn.java:312)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.Unicorn2Backend.emu_start(Unicorn2Backend.java:384)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.AbstractEmulator.emulate(AbstractEmulator.java:380)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.thread.Function64.run(Function64.java:39)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.thread.MainTask.dispatch(MainTask.java:19)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.thread.UniThreadDispatcher.run(UniThreadDispatcher.java:175)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.thread.UniThreadDispatcher.runMainForResult(UniThreadDispatcher.java:99)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.AbstractEmulator.runMainForResult(AbstractEmulator.java:340)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.AbstractARM64Emulator.eFunc(AbstractARM64Emulator.java:262)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.Module.emulateFunction(Module.java:163)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.linux.android.dvm.DvmObject.callJniMethod(DvmObject.java:135)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.linux.android.dvm.DvmObject.callJniMethodObject(DvmObject.java:93)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.tencent.mobileqq.sign.QQSecuritySign.getSign(QQSecuritySign.kt:54)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.tencent.mobileqq.sign.QQSecuritySign.getSign(QQSecuritySign.kt:56)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.tencent.mobileqq.sign.QQSecuritySign.getSign$default(QQSecuritySign.kt:51)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//moe.fuqiuluo.api.UnidbgFetchQSign.sign(UnidbgFetchQSign.kt:177)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//moe.fuqiuluo.api.UnidbgFetchQSign$sign$1.invokeSuspend(UnidbgFetchQSign.kt)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)
        at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
        at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
        at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
        at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
        at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//top.mrxiaom.qsign.QSignService.qSecurityGetSign(QSignService.kt:129)
        at net.mamoe.mirai.internal.network.protocol.packet.OutgoingPacketKt.buildRawUniPacket(OutgoingPacket.kt:139)
        at net.mamoe.mirai.internal.network.protocol.packet.chat.receive.MessageSvcPbSendMsg.createToFriendImpl$mirai_core(MessageSvc.PbSendMsg.kt:694)
        at net.mamoe.mirai.internal.network.protocol.packet.chat.receive.MessageSvc_PbSendMsgKt.createToFriend(MessageSvc.PbSendMsg.kt:564)
        at net.mamoe.mirai.internal.message.protocol.outgoing.FriendMessageProtocolStrategy.createPacketsForGeneralMessage(MessageProtocolStrategy.kt:82)
        at net.mamoe.mirai.internal.message.protocol.outgoing.FriendMessageProtocolStrategy.createPacketsForGeneralMessage(MessageProtocolStrategy.kt:71)
        at net.mamoe.mirai.internal.message.protocol.impl.GeneralMessageSenderProtocol$GeneralMessageSender.process(GeneralMessageSenderProtocol.kt:66)
        at net.mamoe.mirai.internal.message.protocol.outgoing.OutgoingMessageProcessorAdapter.process(OutgoingMessagePipelineProcessor.kt:26)
        at net.mamoe.mirai.internal.message.protocol.outgoing.OutgoingMessageProcessorAdapter.process(OutgoingMessagePipelineProcessor.kt:20)
        at net.mamoe.mirai.internal.pipeline.AbstractProcessorPipeline.process$suspendImpl(ProcessorPipeline.kt:287)
        at net.mamoe.mirai.internal.pipeline.AbstractProcessorPipeline.process(ProcessorPipeline.kt)
        at net.mamoe.mirai.internal.message.protocol.MessageProtocolFacadeImpl.preprocessAndSendOutgoingImpl(MessageProtocolFacade.kt:364)
        at net.mamoe.mirai.internal.message.protocol.MessageProtocolFacadeImpl.preprocessAndSendOutgoing(MessageProtocolFacade.kt:348)
        at net.mamoe.mirai.internal.message.protocol.MessageProtocolFacade$INSTANCE.preprocessAndSendOutgoing(MessageProtocolFacade.kt)
        at net.mamoe.mirai.internal.contact.AbstractUserKt.sendMessageImpl(AbstractUser.kt:263)
        at net.mamoe.mirai.internal.contact.FriendImpl.sendMessage(FriendImpl.kt:102)
        at onebot-mirai-0.3.4-all.jar//com.github.yyuueexxiinngg.onebot.MiraiApi.cqSendPrivateMessage(MiraiApi.kt:151)
        at onebot-mirai-0.3.4-all.jar//com.github.yyuueexxiinngg.onebot.MiraiApi$cqSendPrivateMessage$1.invokeSuspend(MiraiApi.kt)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: unicorn.UnicornException: Invalid memory write (UC_ERR_WRITE_UNMAPPED)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.unicorn.Unicorn.mem_write(Native Method)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.unicorn.Unicorn.mem_write(Unicorn.java:223)
        at qsign-1.2.1-beta-dev-b1facbc.mirai2.jar//com.github.unidbg.arm.backend.Unicorn2Backend.mem_write(Unicorn2Backend.java:127)
        ... 56 more

2023-11-06 22:48:25 W/com.github.unidbg.AbstractEmulator: emulate RX@0x4008fa24[libfekit.so]0x8fa24 exception sp=unidbg@0xbfffec00, msg=mem_write address=0x40a26000, offset=631ms
> Bad ram offset f49000
Process exited with 3
@mikko-mikust
Copy link
Author

目前最新的构建仍然有此问题。而且tx的封杀也更严格了,目前我即使使用了签名服务(8.9.85)也会风控就像手表一样群消息发出去实际上别人收不到(发消息命令行里没有错误)

@MrXiaoM
Copy link
Owner

MrXiaoM commented Nov 9, 2023

unidbg-fetch-qsign 中 unidbg 是闭源的,我无力解决该问题。
请尝试在 txlib/版本/config.jsonunidbg 字段更换后端。

@misaka20002
Copy link

我也有同样的问题,好奇怪,之前用8.9.80用了2个月都没问题,现在被封了换其他版本都有这个问题

misaka20002 added a commit to misaka20002/txlib that referenced this issue Dec 11, 2023
memory.c:1329:memory_region_del_subregion_aarch64: 假设 ‘subregion->container == mr’ 失败
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants