谢谢亚洲之鹰给偶的Ring0方法,请来接分

banxian 2003-02-25 10:36:32
我看了驱动开发网上面的,不过是需要管理员权限.
他是找到GDT,改段属性,再移动GDT表,天哪,这是病毒教程更象一点....
不过偶在WebCrazy的网站上找到了一些以前想要的资料,
小有收获.
...全文
31 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
diabloqin 2003-02-25
  • 打赏
  • 举报
回复
banxian 2003-02-25
  • 打赏
  • 举报
回复
你也是亚洲之鹰么?
是的话你就说嘛....

不可能你不要我偏要给你....

不过听口音不像!
btvmylove 2003-02-25
  • 打赏
  • 举报
回复
西西~~
banxian 2003-02-25
  • 打赏
  • 举报
回复
好的,偶把这段资料也保存到桌面了,呵呵.
我找找看设置IOPL的资料去了
slwqw2 2003-02-25
  • 打赏
  • 举报
回复
该死的MS......
slwqw2 2003-02-25
  • 打赏
  • 举报
回复
呵呵,真正想打破MS的限制并不是那么容易的事,所以Webcrazy的代码必须具有管理员权限才能执行。

实际上,想更改IOPL并不一定要进入Ring0。NTDLL.DLL提供了一个函数NtSetInformationProcess就可以办到,如下所示:

IOPLINFO IoplInfo;
DWORD dwRet;

IoplInfo.IOPL = 3;

NtSetInformationProcess = (NTSETINFORMATIONPROCESS)GetProcAddress(
GetModuleHandle("Ntdll.dll"),
"NtSetInformationProcess"
);

dwRet = NtSetInformationProcess(GetCurrentProcess(),16,&IoplInfo,sizeof(IoplInfo));
if(dwRet == 0 )
{
Memo1->Lines->Add("已经设置IOPL为3,可以在Win32中直接使用In/Out指令了。");
}


不过,必须具有SE_TCB_NAME权限才能执行上面的代码。而正常情况下就连Administrator也没有这个权限,所以仍然没有什么妙法可以打破MS的限制...

21,600

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧