首页
社区
课程
招聘
[转帖]R3隐藏硬盘分区
发表于: 2008-8-11 23:36 8009

[转帖]R3隐藏硬盘分区

2008-8-11 23:36
8009
#include <windows.h>
#include <cstdlib>
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>

using namespace std;

struct SaveContext
{
string strNtPath;
string strDosDevice;
};

typedef vector<SaveContext> svrVector;

void RestoreDevice(SaveContext &Context);

int main(void)
{

DWORD dwDisks=GetLogicalDrives()&0xfffffffb;

svrVector NtDevices;

TCHAR chDosDevice[8]={0};
*(WORD*)chDosDevice=':A';

TCHAR chNtPath[MAX_PATH]={0};

for(int Mask=1;Mask;Mask<<=1,chDosDevice[0]++)
{
     if(dwDisks&Mask)
     {
      QueryDosDevice(chDosDevice,chNtPath,MAX_PATH);
   
      SaveContext Context;
      Context.strDosDevice=chDosDevice;
      Context.strNtPath=chNtPath;
   
      NtDevices.push_back(Context);
   
      cout<<Context.strDosDevice<<"<--->"<<Context.strNtPath<<endl;
  
      DefineDosDevice(DDD_REMOVE_DEFINITION,Context.strDosDevice.c_str(),NULL);
     }
}

return 0;
}

void RestoreDevice(SaveContext &Context)
{
DefineDosDevice(DDD_RAW_TARGET_PATH,Context.strDosDevice.c_str(),Context.strNtPath.c_str());
}

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 563
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
试试......
2008-8-11 23:47
0
雪    币: 63
活跃值: (17)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
3
顶一个
很少在黑客程序中看到有使用标准库
2008-8-12 08:30
0
雪    币: 231
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk
4
模板库很好用啊
只是可能在这类程序中用处不大
2008-8-12 10:30
0
雪    币: 399
活跃值: (38)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
5
鸡蛋壳大哥
什么时候也整点纯汇编代码的,看不懂你发的这C还是C++呀
2008-8-12 15:46
0
游客
登录 | 注册 方可回帖
返回
//