|
远程屏幕传输算法 AnyDesk 为什么那么快?
这么好的东西 为什么没有MAC版 |
|
Sorry,招聘已停止,关闭主题
驱动开发还招人吗? |
|
[请勿新开主题!甲壳相关主题合并帖]
不知道楼主的壳跟VMP比起来怎么样 |
|
发布一个项目的构思,愿意做的来看看
赶紧开发一个人肉搜索引擎,堪称国内第一搜。 |
|
[求助]如何从内存映射句柄得到内核对象(_SECTION_OBJECT)
问题总算是搞清楚了,是SECTION的第一个成员的类型写错了,导致后边的偏移出错。之前也是读取的!_SEGMENT_OBJECT的第一个成员的,现在可以正常读取了。 顺便我也看了下输出,发现跟大家的有点不同,BasedAddress 和 ControlArea的成员刚好相反,难道我的系统特别?我发现WRK中的_SEGMENT定义也是如此. kd> dt _section_object 0xe1c1a908 nt!_SECTION_OBJECT +0x000 StartingVa : (null) +0x004 EndingVa : 0x0007dbc0 +0x008 Parent : (null) +0x00c LeftChild : 0x000e7258 +0x010 RightChild : 0x0007dbb0 +0x014 Segment : 0xe1b3b298 _SEGMENT_OBJECT kd> dt _segment 0xe1b3b298 nt!_SEGMENT +0x000 ControlArea : 0x8211f610 _CONTROL_AREA +0x004 TotalNumberOfPtes : 6 +0x008 NonExtendedPtes : 6 +0x00c WritableUserReferences : 1 +0x010 SizeOfSegment : 0x5e00 +0x018 SegmentPteTemplate : _MMPTE +0x020 NumberOfCommittedPages : 0 +0x024 ExtendInfo : (null) +0x028 SystemImageBase : (null) +0x02c BasedAddress : (null) +0x030 u1 : __unnamed +0x034 u2 : __unnamed +0x038 PrototypePte : 0x00010208 _MMPTE +0x040 ThePtes : [1] _MMPTE kd> dt _control_area 0x8211f610 nt!_CONTROL_AREA +0x000 Segment : 0xe1b3b298 _SEGMENT +0x004 DereferenceList : _LIST_ENTRY [ 0x0 - 0x0 ] +0x00c NumberOfSectionReferences : 1 +0x010 NumberOfPfnReferences : 0 +0x014 NumberOfMappedViews : 0 +0x018 NumberOfSubsections : 1 +0x01a FlushInProgressCount : 0 +0x01c NumberOfUserReferences : 1 +0x020 u : __unnamed +0x024 FilePointer : 0x820b4658 _FILE_OBJECT +0x028 WaitingForDeletion : (null) +0x02c ModifiedWriteCount : 0 +0x02e NumberOfSystemCacheViews : 0 kd> dt _file_object 0x820b4658 ntdll!_FILE_OBJECT +0x000 Type : 5 +0x002 Size : 112 +0x004 DeviceObject : 0x81bf2c08 _DEVICE_OBJECT +0x008 Vpb : 0x81fe6d80 _VPB +0x00c FsContext : 0xe1e8c990 +0x010 FsContext2 : 0xe1e8cae8 +0x014 SectionObjectPointer : 0x820fa144 _SECTION_OBJECT_POINTERS +0x018 PrivateCacheMap : (null) +0x01c FinalStatus : 0 +0x020 RelatedFileObject : (null) +0x024 LockOperation : 0 '' +0x025 DeletePending : 0 '' +0x026 ReadAccess : 0x1 '' +0x027 WriteAccess : 0x1 '' +0x028 DeleteAccess : 0 '' +0x029 SharedRead : 0x1 '' +0x02a SharedWrite : 0 '' +0x02b SharedDelete : 0 '' +0x02c Flags : 0x40042 +0x030 FileName : _UNICODE_STRING "\test.doc" +0x038 CurrentByteOffset : _LARGE_INTEGER 0x0 +0x040 Waiters : 0 +0x044 Busy : 0 +0x048 LastLock : (null) +0x04c Lock : _KEVENT +0x05c Event : _KEVENT +0x06c CompletionContext : (null) kd> !fileobj 0x820b4658 \test.doc Device Object: 0x81bf2c08 \Driver\Ftdisk Vpb: 0x81fe6d80 Event signalled Access: Read Write SharedRead Flags: 0x40042 Synchronous IO Cache Supported Handle Created FsContext: 0xe1e8c990 FsContext2: 0xe1e8cae8 CurrentByteOffset: 0 Cache Data: Section Object Pointers: 820fa144 Shared Cache Map: 00000000 还是要谢谢楼上两位的讲解。 |
|
[求助]如何从内存映射句柄得到内核对象(_SECTION_OBJECT)
刚刚又试了一下,居然可以正常获取了。 |
|
[求助]如何从内存映射句柄得到内核对象(_SECTION_OBJECT)
论坛提示提交失败,发了两次。 |
|
[求助]如何从内存映射句柄得到内核对象(_SECTION_OBJECT)
感谢mj大牛的提示,昨天回去又翻了一下wrk中ntoskrnl的导出声明,的确有好多ObjectType的声明。 于是乎,我试了一下,FileMapping句柄传入驱动后经ObReferenceObjectByHandle获取成功可以得到PSECTION的值,但是查看((PSECTION)Section)->Segment->ControlArea->FilePointer的许多成员均为无效,用ObQueryNameString获取文件名就崩溃了,访问地址无效。 另外还试了一种方法,在win32下用ZwQueryObject先获取到FileMapping的对象名,然后传入驱动用ObOpenObjectByName打开后,情况和之前一样。 难道要预先调用一些函数此结构成员才会有效还是其他什么原因呢? 经过google一番后,发现mj回复的一个帖子http://www.whitecell.org/forums/viewthread.php?tid=711&highlight=ZwQueryInformationProcess上说_EPROCESS结构在没有调用过ZwQueryInformationProcess(ProcessImageFileInformation)前, 是空的只有调用过一次该函数,系统才会获得镜象文件并放到这个成员中。是不是这里也有类似问题呢? |
|
[求助]如何从内存映射句柄得到内核对象(_SECTION_OBJECT)
感谢mj大牛的提示,昨天回去又翻了一下wrk中ntoskrnl的导出声明,的确有好多ObjectType的声明。 于是乎,我试了一下,FileMapping句柄传入驱动后经ObReferenceObjectByHandle获取成功可以得到PSECTION的值,但是查看((PSECTION)Section)->Segment->ControlArea->FilePointer的许多成员均为无效,用ObQueryNameString获取文件名就崩溃了,访问地址无效。 难道要预先调用一些函数此结构成员才会有效还是其他什么原因呢? 经过google一番后,发现mj回复的一个帖子http://www.whitecell.org/forums/viewthread.php?tid=711&highlight=ZwQueryInformationProcess上说_EPROCESS结构在没有调用过ZwQueryInformationProcess(ProcessImageFileInformation)前, 是空的只有调用过一次该函数,系统才会获得镜象文件并放到这个成员中。是不是这里也有类似问题呢? |
|
[北京]招聘 安全工程师 + 程序员
坛主,我刚投了一份,请查收。不知道现在还招人吗? |
|
[原创]一款所谓的猛“壳壳”终于发布
请问在什么位置下内存断点啊,怎么实现那种db xx的处理呢 |
|
[原创]一款所谓的猛“壳壳”终于发布
想请教楼主个问题, 怎么处理代码才能让OD直接显示db xx 这样的形式,而不对指令进行反汇编。如果直接在代码中写db xx,一到OD里边就马上被反汇编成指令了。 0043FD85 35 db 35 ; CHAR '5' 0043FD86 C1 db C1 0043FD87 42 db 42 ; CHAR 'B' 0043FD88 06 db 06 0043FD89 58 db 58 ; CHAR 'X' 0043FD8A 39 db 39 ; CHAR '9' 0043FD8B 39 db 39 ; CHAR '9' 0043FD8C 03 db 03 0043FD8D 3C db 3C ; CHAR '<' 0043FD8E 06 db 06 0043FD8F 00 db 00 0043FD90 00 db 00 0043FD91 00 db 00 0043FD92 00 db 00 0043FD93 > $- FF25 99FD4300 jmp dword ptr [43FD99] ; 试验_加?0046E000 0043FD99 . 00E04600 dd 试验_加?0046E000 |
|
[原创]借贵宝地,360安全卫士诚聘病毒分析/windows c++开发(持续招聘中...)
怎么不招PE引擎了。以前还有这个职位的。 |
|
[原创]北京瑞星公司最新招聘职位信息
昨天发了一份简历,今天还没有回应。不知收到没有。 |
|
[求助]拦截 zwcreatefile 怎么不成功啊!!!!!
在你dll的函数MyCreateFileA中加个assert,如果autocad有调用ZwCreateFile函数自然会进入你的函数,弹出断言后就可以挂上调试了,看看哪里出问题了。如果没出断言 很可能是人家没调用ZwCreateFile。 |
|
[原创][原创]高薪招聘逆向工程师
貌似只是逆向,不用编码。 |
|
[求助]如何在MFC中编译单独的汇编程序?
右击工程,选择 custom build rules,然后把Microsoft Macro Assembler选上就可以编译ASM了,然后在工程属性中会看到多出一个Microsoft Macro Assembler的标签,在里边可以设置一些编译和输出参数。 从VS2005开始已经集成了这个功能。 最好把MASM32的头文件和库文件也添加到工程目录中,写代码的时候直接include 和 includelib 相应文件就可以了。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值