zoukankan      html  css  js  c++  java
  • SmLoadDeferedSubsystemApi

    SmLoadDeferedSubsystemApi 借用进程启动??parent handle hack?

    switch (SmApiMsg->ApiNumber) {
    case SmExecPgmApi :
    Status = (SmpApiDispatch[SmApiMsg->ApiNumber])(
    SmApiMsg,
    ClientContext,
    ConnectionPort);
    break;

    case SmLoadDeferedSubsystemApi :
    Status = (SmpApiDispatch[SmApiMsg->ApiNumber])(
    SmApiMsg,
    ClientContext,
    ConnectionPort);

    PSMAPI SmpApiDispatch[SmMaxApiNumber] = {
    SmpCreateForeignSession,
    SmpSessionComplete,
    SmpTerminateForeignSession,
    SmpExecPgm,
    SmpLoadDeferedSubsystem
    };

    键名Optional是属于defer类的subsytem,smss.exe取出值Posix,再读取Posix键的值,发现是psxss.exe。所以如果上面的方法成功,就可以发命令让smss.exe进程来启动psxss.exe

    Required是必须类,所以现在windows一般都是取出windows键的值csrss.exe来启动,debug也是,不过觉的都是为空。

    Kmode是smss.exe读取出来使用NtSetSystemInformation()函数功能号SystemExtendServiceTableInformation完成加载的

    另外笔记下,smss.exe是最早的用户进程(在内核Phase1Initxx阶段创建,smss.exe这个进程名没法配置,硬编码在代码里的),smss.exe启动2个进程(其实还有1个,就是autocheck.exe,不过启动后就退出了)分别是:winlogon.exe和csrss.exe

    其实这2个进程都是可以配置的,csrss.exe在上面截图已经看到了,就是在那配置。而winlogon.exe是smss.exe是在Session Manager下找不到Excute子键时默认启动的进程,

    暂时还不晓得Excute是怎么配置的。

    ****不一定全对,只是粗糙看了下泄露的旧源码啥的,

  • 相关阅读:
    深度通道编程模型
    缓冲区溢出实验实验楼
    团队作业(一)
    信安导论学习阶段性总结
    Python总结
    mysql下载及安装
    初识python
    MobileMenuScene来点动画效果
    移动菜单页面PlayerInput
    渲染和填充MobileMenuListItem
  • 原文地址:https://www.cnblogs.com/kkindof/p/2571064.html
Copyright © 2011-2022 走看看