(-: LYSM :-)
码龄8年
关注
提问 私信
  • 博客:860,349
    社区:201
    860,550
    总访问量
  • 273
    原创
  • 789,557
    排名
  • 386
    粉丝
  • 23
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2017-04-13
博客简介:

LYSM

博客描述:
[LYing SiMon] tells the lies that he [Loves You So Much]
查看详细资料
个人成就
  • 获得476次点赞
  • 内容获得198次评论
  • 获得2,550次收藏
  • 代码片获得4,249次分享
创作历程
  • 65篇
    2021年
  • 156篇
    2020年
  • 131篇
    2019年
成就勋章
TA的专栏
  • Windows 驱动开发
    40篇
  • 窗口操作
    13篇
  • DLL注入/劫持
    7篇
  • 进程保护
  • RootKit
    15篇
  • 后端
    6篇
  • 知识面拓展
    15篇
  • 漏洞
    1篇
  • DUILIB
  • 虚幻引擎
    2篇
  • 通信
  • windbg
    3篇
  • 病毒木马
    6篇
  • ip代理
  • 虚拟机
  • 机器学习
    1篇
  • 机器码
    2篇
  • 防多开
    6篇
  • ShellCode
    3篇
  • 加密解密
    3篇
  • 加壳脱壳
    2篇
  • 提权
    1篇
  • 模拟按键
    1篇
  • Lua
    2篇
  • C++网络编程
    1篇
  • C++功能函数
    51篇
  • 调试&检测
    35篇
  • C++基础语法
    27篇
  • C#
    15篇
  • 渗透
    10篇
  • 环境搭建
    29篇
  • Python
    4篇
  • Linux
    1篇
  • JavaScript
    1篇
  • VB
  • 笔试
    3篇
  • 基础知识
    28篇
  • Windows
    8篇
  • 逆向
    6篇
  • CE
    1篇
兴趣领域 设置
  • 网络空间安全
    系统安全
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

174人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

[C++] 异或加密

std::string Encrypt(std::string content, std::string secretKey){ for (int i = 0; i < content.length(); i++) { content[i] ^= secretKey[i % secretKey.length()]; } return content;}std::string Decrypt(std::string data, std::str.
原创
发布博客 2021.07.29 ·
487 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

[C#] 异或加密

private char[] Encrypt(string content, string secretKey){ char[] data = content.ToCharArray(); char[] key = secretKey.ToCharArray(); for (int i = 0; i < data.Length; i++) { data[i] ^= key[i % key.Length]; } return ...
原创
发布博客 2021.07.29 ·
422 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Rootkit] 驱动隐藏 - 断链

注意 : 此方法会触发 PG代码参考 1typedef struct _driverdata{ LIST_ENTRY listentry; ULONG unknown1; ULONG unknown2; ULONG unknown3; ULONG unknown4; ULONG unknown5; ULONG unknown6; ULONG unknown7; UNICODE_STRING path; UNICODE_STRING name;}driverdata;VOI
原创
发布博客 2021.07.12 ·
523 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[检测&过检测] 重写 ReadProcessMemory 、WriteProcessMemory

一、本文大纲系统调用的两种方式:中断门和快速调用_KUSER_SHARED_DATA 结构使用 cpuid 指令判断当前CPU是否支持快速调用3环进0环需要更改的4个寄存器以 ReadProcessMemory 为例说明系统调用全过程重写 ReadProcessMemory 和 WriteProcessMemoryint 0x2e 和 sysenter 都做了什么工作?二、中断门和快速调用以我的理解,系统调用,即从调用操作系统提供的3环API开始,到进0环,再到返回结果到3环的全过程
转载
发布博客 2021.07.12 ·
2493 阅读 ·
3 点赞 ·
0 评论 ·
13 收藏

[C#] 处理 Json

环境搭建点击 NuGet 程序包安装 Newtonsoft.Json添加 using :using Newtonsoft.Json;写 JsonStringWriter sw = new StringWriter();JsonWriter writer = new JsonTextWriter(sw);writer.WriteStartObject();writer.WritePropertyName("password");writer.WriteValue(textBoxT
原创
发布博客 2021.07.11 ·
157 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[C#] 发送 http 请求

http post 请求 ,参数使用 json 格式using System.Net;using System.IO;public static string PostUrl(string url, string postData){ string result = ""; byte[] data = Encoding.UTF8.GetBytes(postData); HttpWebRequest req = (HttpWebRequest)WebRequest.Cre
原创
发布博客 2021.07.07 ·
492 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[C++功能函数] 判断文件&目录是否存在

代码/* 需要引入头文件 #include <io.h> 存在返回 true ,不存在返回 false*/BOOL isFileOrDirExist(PCHAR name){ return _access(name, 0) == 0 ? TRUE : FALSE;}
原创
发布博客 2021.07.05 ·
229 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

[Node.js] rsa&aes 加密解密

代码'use strict';const express = require('express')const bodyParser = require('body-parser')var crypto = require('crypto');var NodeRSA = require('node-rsa');// 创建服务器const app = express()// 初始化 bodyParserapp.use(bodyParser.urlencoded({ extend: fal
原创
发布博客 2021.07.04 ·
394 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

[Node.js] mongodb 增删查改

代码mydb.js (用来定义表结构、连接数据库)const mongoose = require('mongoose')// 连接数据库 :mongo_testmongoose.connect('mongodb://localhost:27017/mongo_test', { useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true })// 定义 User 表字段const User = mongoose.
原创
发布博客 2021.06.25 ·
163 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Node.Js] express 处理 get&post 请求

代码'use strict';const express = require('express')const bodyParser = require('body-parser')// 创建服务器const app = express()// 初始化 bodyParserapp.use(bodyParser.urlencoded({ extend: false }));app.use(bodyParser.json());// 处理主页 get 请求app.get('/', (
原创
发布博客 2021.06.24 ·
154 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[漏洞] 空指针解引用

原理c语言空指针的值为 NULL,一般 NULL指针指向进程的最小地址 0 。视图通过空指针对数据进行访问,会导致运行时错误。 当程序试图解引用一个期望非空但实际为空的指针时,会发生空指针解引用错误,大部分情况下会导致程序崩溃。实例int* p = NULL;*p = 1; // 出错,程序崩溃应用Windows内核漏洞学习-空指针解引用...
原创
发布博客 2021.06.23 ·
805 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Node.js] 处理 Get&Post 请求

1
原创
发布博客 2021.06.18 ·
153 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Rootkit] 进程隐藏 - 内存加载(进程寄生)

众所周知,windows下可执行文件必须符合一定的格式要求,微软官方称之为PE文件(关于PE文件的详细介绍这里就不赘述了,google一下可以找到大把);用户在界面双击exe时,有个叫做explorer的进程会监测并接受到这个事件,然后根据注册表中的信息取得文件名,再以Explorer.exe这个文件名调用CreateProcess函数去运行用户双击的exe;PC中用户一般都是这样运行exe的,所以很多用户态的exe都是exlporer的子进程,用process hacker截图如下:那么这个explo
转载
发布博客 2021.06.11 ·
1630 阅读 ·
0 点赞 ·
1 评论 ·
10 收藏

[Rootkit] 无痕 hook - 硬件断点

hook方式有多种,这里做了一个系统性的总结对比,如下:https://www.cnblogs.com/theseventhson/p/14324562.html 之前这里做了接受消息的hook,用的就是最初级的hook方式: jmp到我们自己的处理逻辑。上面也分析了,这种方式缺点非常明显;最牛逼的神级hook:VT读写分离前面已经介绍过了,今天继续介绍高级的hook方式:硬件断点;现代软件开发,尤其是大型软件开发,绝对不可能一步到位,开发期间肯定存在各种bug。为了方便找到这些bug,软件上有专门
转载
发布博客 2021.06.10 ·
3475 阅读 ·
4 点赞 ·
0 评论 ·
13 收藏

[Rootkit] 进程替换

本文的进程替换是指将正在运行的程序的内存空间用恶意代码替换掉. 如果被替换的进程是合法的进程, 那么恶意代码可以披着合法的外衣干坏事了. 当然坏事干多了还是会被发现的.替换的过程如下:创建一个挂起状态(SUSPEND)的进程, 此时进程的主线程还未开始运行.读取主线程的上下文(CONTEXT), 并读取新创建进程的基址.使用NtUnmapViewOfSection将新创建的进程的内存空间释放掉, 随后可以开始填充恶意代码.设置主线程的上下文, 启动主线程.一. 我将恶意代码当成资源文件, 所
转载
发布博客 2021.06.10 ·
238 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

[Rootkit] dll 隐藏 - VAD

3环下要想隐藏dll,仅仅靠断链和抹去PE头信息是不够的;这样做能骗过同样在3环运行的调试器,但是骗不过在0环通过驱动做检测的PChunter、Process Hacker等工具;要想彻底隐藏,需要更进一步搞定驱动层的各种检测,下面会详细介绍隐藏的细节原理和操作方法!1、VAD 虚拟内存管理内存分两种:物理内存和虚拟内存;操作系统和进程共享物理内存,进程独享虚拟内存;物理内存可以通过CR3在进程之间互相隔离,确保进程之间互不侵犯;那么进程内部的虚拟地址该怎么管理了? 32位下,每个进程独享4GB内存,怎
转载
发布博客 2021.06.10 ·
2113 阅读 ·
2 点赞 ·
3 评论 ·
11 收藏

[VT 虚拟化] 资料整合

请转到以下链接食用 (* ̄(oo) ̄)intel:x86架构VT虚拟化(一):基本概念和流程简介intel:x86架构VT虚拟化(二):核心代码入门介绍intel:x86架构VT虚拟化(三):x64多核代码介绍intel:x86架构VT虚拟化(四):x64 无痕hook/shadow walker/页面读写分离...
原创
发布博客 2021.06.10 ·
601 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

[驱动开发] 驱动隐藏 - driveEntry返回失败

常见隐藏驱动的方式:驱动模块断链调用MiProcessLoadEntry删除驱动对象(据说不会触发PG)清理MmUnloadDriver List 和 PiDDBCacheTable两处driveEntry返回失败驱动模块加载后立即卸载今天介绍一种driveEntry返回失败隐藏驱动的方法 —— DriverEntry返回失败原理windows会根据DriverEntry的返回值判断驱动是否加载成功。如果返回成功,会在注册表详细记录,并将sys文件复制到System32/drivers
转载
发布博客 2021.06.10 ·
1602 阅读 ·
4 点赞 ·
1 评论 ·
7 收藏

[Node.js] VS2019 开发环境搭建 + Hello World 实例

安装 VS2019 里的 Node.js 支持:安装完成后还需要再去官网下载 Node.js (这一点我很无语,它不能内置在里面么)官网链接:https://nodejs.org/en/左边是稳定版本,右边是最新版本,我选择了稳定版:安装过程在此省略,无脑下一步即可,安装完成后需要重启电脑(因为配置了环境变量),重启后 cmd 输入 node 查看是否安装成功:打开 vs ,创建一个 空白 Node.js 控制台应用程序:可以选择直接在 vs 里启动,但它原始的代码里没有吸收回车,所以闪
原创
发布博客 2021.06.03 ·
1791 阅读 ·
3 点赞 ·
0 评论 ·
2 收藏

[Node.js] 入坑

什么是 Node.js官网的解释如下:Node.js 不是一门语言,也不是一个库或者框架,而是一个 js 的运行时环境,以前 js 只能依附于浏览器执行,有了 Node.js 后,js 可以脱离浏览器执行。并为 js 提供了一些服务器级别操作的 API。它构建在 Chrome 的 V8 引擎上。关于框架Express 是基于 Node.js 平台,快速、开放、极简的 Web 开发框架:https://github.com/expressjs/expresssequelize 用来把面向对象的
原创
发布博客 2021.06.03 ·
135 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多