PWNWTOA通过大量调试确定主逻辑在 0x2150。其余功能分别是menu: 0x2120getinput: 0x3EF0output: 0x3DD0atoi: 0x2990add: 0x12F0delete: 0x19C0edit: 0x15D0show: 0x1BA0exit: 0x2900上面函数大部分地址都是虚拟地址根据程序设定的基地址进行偏移,不能直接访问。flag的虚拟地址在0x501b40。edit函数留有后门,可以直接修改node的结构体。__int64 __fastcall edit(__int64 a1, __int64 a2, int a3){ int v3; // ecx __int64 v4; // rbx __int64 v5; // r12 __int64 v6; // r15 unsigned int v7; // eax __int64 v8; // rsi __int64 result; // rax int v10; // r15d unsigned int offset; // eax unsigned int v12; // eax __int64 v13; // r14 int v14; // r10d int v15; // ecx __int64 v16; // [rsp+0h] [rbp-60h] __int64 v17; // [rsp+8h] [rbp-58h] __int64 v18; // [rsp+10h] [rbp-50h] __int64 v19; // [rsp+18h] [rbp-48h] int v20; // [rsp+20h] [rbp-40h] __int64 savedregs; // [rsp+60h] [rbp+0h] BYREF if ( **(_QWORD **)(a1 + 8)
………………………………