能力值:
( LV2,RANK:10 )
2 楼
听说IDA有,OD不知道有没有这个功能
能力值:
( LV2,RANK:10 )
3 楼
fs:[0]指向TEB结构吧
能力值:
( LV2,RANK:10 )
4 楼
fs:[0]就是SEH链的指针入口
能力值:
( LV2,RANK:10 )
5 楼
不得哦,兄弟们偶还是不懂哦
我查了 SEH 是结构化异常处理,而这个 fs:[0] 是指向的异常处理程序啊
而不是什么 这个CALL 的参数的结构体啊。 还望指教啊!
另外 IDA 我看了下 没有分析单一函数的。 如果这个软件加了壳 IDA就没用了
所以IDA又时候使用范围大大有限制,有没有就粘贴一个函数的汇编代码,然后
通过一些设置就帮助分析结构体的这种软件啊
能力值:
( LV4,RANK:50 )
6 楼
你把工具想的太智能了……
单独分析……
那它内部调用的CALL和API怎么确定……
东西是死的,人是活的,工具是辅助,分析还在人……
能力值:
( LV2,RANK:10 )
7 楼
我也不太懂,看大牛们的回复。。。。
能力值:
( LV2,RANK:10 )
8 楼
恩恩,我也想过这个问题,看来确实没有 哈哈
但是,一个参数是结构体的话 需要怎么来确定他的长度 和他 的变量集合呢?
希望能给点参考!!谢谢
能力值:
( LV4,RANK:50 )
9 楼
结构体只在概念上存在,内存的表现就是连续的buffer所存储的变量
所以你说结构体是单独的N个数据也可以,说N个语义上毫无关系的变量合成一个结构体也可以
能力值:
( LV2,RANK:10 )
10 楼
但是我要调用这个函数啊 比如call xxx 如果他有一个参数然后这个参数就是一个结构体的首地址
然后我调用的话 就也需要知道这个结构体的具体结构啊,不然我传什么进去啊!!如果传的这个结构体
不对就可能引起内存出错啊。
但是跟的话确实比较麻烦,我跟了下他这个结构体的内容很大很复杂。而且涉及到好几层的调用。
所以我请教一下你们的做法
能力值:
( LV2,RANK:10 )
11 楼
其实 有时候想下也只有硬跟,不然就不知道他的数据结构了 但是硬跟的话 可能会出错,工作量也大
知识有限,投石问路。看看论坛兄弟们好的方法了
能力值:
( LV4,RANK:50 )
12 楼
struct Obj
{
int a;
char b;
long c;
}
假如你要逆向的函数传入一个obj类型的对象指针,且函数内部仅对obj中的a域进行了操作,而没有任何关于b和c域的操作,你如何判定b,c域的存在?
能力值:
( LV2,RANK:10 )
13 楼
哈哈 这个确实似乎很难哈。既然这个都难。不过我坚信这个是有法解决的
不然搞破解的大牛要调用这个函数,他们怎么办。不可能就因为这个而报废了社
不过想想 你说得也很有道理,这种时候咋办呢??想办法得到它的长度
然后只设置自己需要设置的变量吗?
比如这个 Obj 结构体 如果只操作了a 域 就给他传个包含a域的结构吗,
struct Obj
{
int a;
};
如果知道长度还好点 可以设置为
struct Obj
{
int a;
BYTE unK[5];
};
呵呵 你是不是这个意思啊 估计也只有这个样子了哈
能力值:
( LV2,RANK:10 )
14 楼
知道长度的可能不会出错 不过也难说
不知道长度的似乎会有潜在的出错可能啊
能力值:
( LV4,RANK:50 )
15 楼
我是来看大牛的解答的
能力值:
( LV2,RANK:10 )
16 楼
看不懂 继续顶
能力值:
( LV2,RANK:10 )
17 楼
我是来看大牛的解答的
能力值:
( LV2,RANK:10 )
18 楼
mark this
能力值:
( LV2,RANK:10 )
19 楼
顶顶顶~~~~~~~~~~~~~~~
能力值:
( LV2,RANK:10 )
20 楼
我是围观的群众
能力值:
( LV2,RANK:10 )
21 楼
都顶 没大牛了么 我要踢馆了哈
能力值:
( LV2,RANK:10 )
22 楼
等待大牛回复
能力值:
( LV2,RANK:10 )
23 楼
果然是很有意思