首页
社区
课程
招聘
[旧帖] 把这10行代码翻译成delphi版可好 0.00雪花
发表于: 2015-6-24 00:16 3596

[旧帖] 把这10行代码翻译成delphi版可好 0.00雪花

2015-6-24 00:16
3596
if (NT_SUCCESS(ntStatus) && SystemInformationClass==SystemProcessesAndThreadsInformation)
  {
    pSystemProcesses = (PSYSTEM_PROCESSES)SystemInformation;
    while (TRUE)
    {
      if (pSystemProcesses->ProcessId==0x12345678) //如果是我们需要隐藏的PID就进行数据修改
      {
        if (pSystemProcesses->NextEntryDelta)
        {
          //当我们需要隐藏的进程后面还有进程时
          //越过我们自己进程让NextEntryDelta直接指向下一个数据块
          Prev->NextEntryDelta += pSystemProcesses->NextEntryDelta;
        }
        else
        {
          //当我们进程处于最后一个数据那么我们就把上一个数据结构的NextEntryDelta置0
          //这时系统在遍历我们进程时就不会发现了
          Prev->NextEntryDelta=0;
        }
        break;
      }
      if (!pSystemProcesses->NextEntryDelta) break;
      Prev=pSystemProcesses;
      pSystemProcesses = (PSYSTEM_PROCESSES)((char *)pSystemProcesses + pSystemProcesses->NextEntryDelta);
    }
  }
  return ntStatus;
}

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我是能看懂,但是翻译不了
2015-6-24 08:53
0
雪    币: 602
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我是能翻译,但是没那个心思
2015-6-24 09:35
0
雪    币: 1602
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
老的东西都有翻译的
2015-6-24 09:46
0
雪    币: 608
活跃值: (643)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
用简单替换的方式翻译了一下,凑合看,哪里不对的自己改改

if (NT_SUCCESS(ntStatus) and (SystemInformationClass = SystemProcessesAndThreadsInformation)) then
  begin
    pSystemProcesses := PSYSTEM_PROCESSES(SystemInformation);
    while true
    begin
      if (pSystemProcesses^.ProcessId = 0x12345678) then //如果是我们需要隐藏的PID就进行数据修改
      begin
        if (pSystemProcesses^.NextEntryDelta) then
        begin
          //当我们需要隐藏的进程后面还有进程时
          //越过我们自己进程让NextEntryDelta直接指向下一个数据块
          Prev^.NextEntryDelta +:= pSystemProcesses^.NextEntryDelta;
        end else
        begin
          //当我们进程处于最后一个数据那么我们就把上一个数据结构的NextEntryDelta置0
          //这时系统在遍历我们进程时就不会发现了
          Prev^.NextEntryDelta:=0;
        end;
        break;
      end;
      if (pSystemProcesses^.NextEntryDelta = 0) then break;
      Prev:=pSystemProcesses;
      pSystemProcesses := PSYSTEM_PROCESSES(ULONG(pSystemProcesses) + pSystemProcesses^.NextEntryDelta);
    end;
  end;
  Result := ntStatus;
end;
2015-6-24 10:02
0
雪    币: 8
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我想用这个代码把SystemInformation  BUFFER里的进程名字改掉,比如123.exe改成别的,然后让程序取不到真正的字串,这样程序就不知道有多少个123.exe

这个代码能实现吗。能帮我改改吗
2015-6-24 14:41
0
雪    币: 878
活跃值: (496)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
用dll包装
2015-6-24 15:29
0
雪    币: 8
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
注入的HOOK的,但是不知道该怎么处理把目标进程名改掉,让遍历进程遍历不到或者只遍历到这样一个进程
2015-6-24 15:32
0
雪    币: 199
活跃值: (791)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9
if (NT_SUCESS(ntStatus) and
    (SystemInformationClass = SystemProcessesAndThreadsInformation)) then
  begin
    pSystemProcesses = PSYSTEM_PROCESSES(SystemInformation);
    while True do
    begin
      if (pSystemProcesses^.ProcessId = $12345678) then // 如果是我们需要隐藏的PID就进行数据修改
      begin
        if (pSystemProcesses^.NextEntryDelta) then
        begin
          // 当我们需要隐藏的进程后面还有进程时
          // 越过我们自己进程让NextEntryDelta直接指向下一个数据块
          Inc(Prev^.NextEntryDelta, pSystemProcesses^.NextEntryDelta);
        end
        else
        begin
          // 当我们进程处于最后一个数据那么我们就把上一个数据结构的NextEntryDelta置0
          // 这时系统在遍历我们进程时就不会发现了
          Prev^.NextEntryDelta := 0;
        end;
        break;
      end;
      if (not pSystemProcesses^.NextEntryDelta) then
        break;
      Prev := pSystemProcesses;
      pSystemProcesses := PSYSTEM_PROCESSES(integer(pSystemProcesses) +
        pSystemProcesses^.NextEntryDelta);
    end;
  end;
2015-7-6 12:54
0
雪    币: 433
活跃值: (1895)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
10
隐藏进程干嘛呢...进程名字吗?..那不如直接改path进装白名单进程了....
2015-7-6 13:02
0
游客
登录 | 注册 方可回帖
返回
//