gemo
1
以下代码,可以列出指定目录下的文件:
NSDirectoryEnumerator *direnum = [[NSFileManager defaultManager] enumeratorAtPath:@"/xxx/"];
NSString *filename;
while ((filename = [direnum nextObject] )) {
NSLog(@"%@", filename);
}
现在想通过hook隐藏特定的文件,试过对NSEnumerator的nextObject方法进行hook,发现没有效果,求高手指点怎么写这个hook
Zhang
4
没记错的话这玩意儿实际调用的是[NSFileManager contentsOfDirectoryAtPath:error:]
在这里hook把对应的记录从nsarray里删掉就可以啦
大把纯c的api怎么办呢。看NSFileManager底层是用的哪些c api。
gemo
6
我试了不行。contentsOfDirectoryAtPath这个函数我hook了,然后也生效了,但是并没有影响到enumeratorAtPath。还有LS说的hook底层api,fopen我也hook了也生效了,但是也没有影响到enumeratorAtPath。