课后笔记1

检测的目标进程:
ydebugg ; “ImmunityDebugger.exe”
_500], rax
Exe ; “ollydbg.exe”
_4F8], rax
hackerE ; “ProcessHacker.exe”
_4F0], rax
Exe ; “tcpview.exe”
_4E8], rax
sExe ; “autoruns.exe”
_4E0], rax
scExe ; “autorunsc.exe”
_4D8], rax
Exe ; “filemon.exe”
_4D0], rax
Exe ; “procmon.exe”
_4C8], rax
xe ; “regmon.exe”
_4C0], rax
Exe ; “procexp.exe”
_4B8], rax
; “idaq.exe”
_4B0], rax
xe ; “idaq64.exe”
_4A8], rax
rkExe ; “Wireshark.exe”
_4A0], rax
Exe ; “dumpcap.exe”
_498], rax
lorerEx ; “HookExplorer.exe”
_490], rax
ecExe ; “ImportREC.exe”
_488], rax
Exe ; “PETools.exe”
_480], rax
xe ; “LordPE.exe”
_478], rax
ectorEx ; “SysInspector.exe”
_470], rax
lyzerEx ; “proc_analyzer.exe”
_468], rax
yzerExe ; “sysAnalyzer.exe”
_460], rax
tExe ; “sniff_hit.exe”
_458], rax
xe ; “windbg.exe”
_450], rax
ontrolE ; “joeboxcontrol.exe”
_448], rax
erverEx ; “joeboxserver.exe”
_440], rax
erverEx ; “joeboxserver.exe”
_438], rax
ehacker ; “ResourceHacker.exe”
_430], rax
xe ; “x32dbg.exe”
_428], rax
xe ; “x64dbg.exe”
_420], rax
Exe ; “Fiddler.exe”
_418], rax
uggerEx ; “httpdebugger.exe”
_410], rax

_3EC], ax
_3CC], 0

检测的目标服务:
mov [rbp+240h+var_23C], 0Dh
lea rax, aVboxwddm ; “VBoxWddm”
mov [rbp+240h+psz2], rax
lea rax, aVboxsf ; “VBoxSF”
mov [rbp+240h+var_208], rax
lea rax, aVboxmouse ; “VBoxMouse”
mov [rbp+240h+var_200], rax
lea rax, aVboxguest ; “VBoxGuest”
mov [rbp+240h+var_1F8], rax
lea rax, aVmci ; “vmci”
mov [rbp+240h+var_1F0], rax
lea rax, aVmhgfs ; “vmhgfs”
mov [rbp+240h+var_1E8], rax
lea rax, aVmmouse ; “vmmouse”
mov [rbp+240h+var_1E0], rax
lea rax, aVmmemctl ; “vmmemctl”
mov [rbp+240h+var_1D8], rax
lea rax, aVmusb ; “vmusb”
mov [rbp+240h+var_1D0], rax
lea rax, aVmusbmouse ; “vmusbmouse”
mov [rbp+240h+var_1C8], rax
lea rax, aVmxSvga ; “vmx_svga”
mov [rbp+240h+var_1C0], rax
lea rax, aVmxnet ; “vmxnet”
mov [rbp+240h+var_1B8], rax
lea rax, aVmx86 ; “vmx86”
mov [rbp+240h+var_1B0], rax
mov r8d, 5 ; dwDesiredAccess
lea rdx, DatabaseName ; “ServicesActive”
xor ecx, ecx ; lpMachineName
call cs:__imp_OpenSCManagerW

1、WINDOWS API
进程遍历
CreateToolhelp32Snapshot
Process32First
Process32Next
EnumProcesses

服务遍历
OpenSCManagerW
EnumServicesStatusExA
EnumServicesStatusExW

进程模块遍历
Module32First
Module32Next
EnumProcessModules

2、脚本
使用WMIC 命令 实现当前系统进程信息遍历
使用WMIC 命令 实现枚举当前系统服务信息遍历

目标:对目标进程和服务进行分类,分类标准自己定,后续讲评。了解API 用法,使用指定API 完成系统进程遍历,并遍历每个进程中的模块信息,并判断当前系统中是否存在目标进程;使用指定API完成系统服务信息遍历,并检测目标服务是否存在;并能正常调试运行;使用WMIC命令 实现系统进程和服务信息的遍历。

课程目的:

1、环境感知,简单一点,就是获取当前环境的信息,从而对于下一步操作提供指导性的东西。

C/S C1 ,C2,C3,C4 —》S1 服务的可靠性

进程结构体内容,和模块结构体内容,二进制关联路径后续有用。

通过API的方式去获取这些信息,使用成本上,你得去了解很多参数, 结构体内容,这个成本是比较高的。但是通过命令行的方式,就非常简单了。

拿信息的方式,可以多样化,为什么强调一个,你们至少得懂得一门编程语言。 进程,模块,软件信息,服务信息等等。对操作系统有一个直观的认知。

攻击侧:

1、你的系统里面有什么对我的攻击产生影响的软件或者模块?

if(存在xxxx软件){
进程信息,服务信息,残留文件,Program Files (x86),—》 存在表明相关软件是存在在该计算机上的
}
if(存在调试器){

}
功能的隐藏问题。可以全部藏起来,这个会很容易造成落差感,可以藏关键的。文件大小,

防守侧:
功能的发现问题。

2、脚本编写和控制台交互的能力。

3、实施路径,复杂化。

脚本交互代码:

#include 
#include 
#include 


int main() {
    FILE* fp = _popen("wmic process get Name, ProcessId, ParentProcessId", "r");
    if (fp == NULL) {
        perror("popen error");
        exit(EXIT_FAILURE);
    }
    char buffer[1024];
    while (fgets(buffer, sizeof(buffer), fp) != NULL) {
        printf("%s", buffer);
    }
    int status = _pclose(fp);
    if (status == -1) {
        perror("pclose error");
        exit(EXIT_FAILURE);
    }
    return 0;
}

命令行结果导入文件,再从文件导入程序。
从程序到程序。

课后题目
1、用你们编写的这套枚举进程和模块的代码,把你们机器上所有的进程 以及每个进程的模块信息。都枚举出来。对这些信息进行一个分类。system32下面的进程有哪些,非system32下面的进程有哪些。system32下面的进程简介。每个进程内的模块,system32下面的进程有哪些,非system32下面的进程有哪些。system32下面的进程简介。每个进程内的模块,system32下面的进程有哪些,非system32下面的进程有哪些。system32下面的进程简介。每个进程内的模
system32 路径下的模块有哪些,非system32下的模块有哪些。office,ida,邮箱,QQ系列软件等等。

你可能感兴趣的:(上课内容,学习)