1.免杀动态对抗之syscall[源码分析]
2.针对PostgreSQL数据库从零部署GoldenGate 19c
3.gate in是千年什么意思?
免杀动态对抗之syscall[源码分析]
基础概念
操作系统分为内核和应用层,从R0-R3,源码R0是千年内核,R3是源码用户层。Windows中日常调用的千年API都是R3抽象出来的接口,虽然Win API它也是源码源码狗免费分享最新最全的源码R3接口,但由于Windows的千年设计思想就是高度封装,实际上的源码R3 API是ntdll.dll中的函数。
我们调用的千年Win API都是kernel.dll/user.dll中的函数,最终都要经过ntdll.dll。源码
逆向学习一个函数,千年选定CreateThread,源码ntdll中的千年java 商城系统 源码对应函数是NtCreateThread。可以看到首先给eax赋值(系统调用号SSN),源码然后再执行syscall。千年
EDR的工作原理是对Windows API进行hook。一般使用inline hook,即将函数的开头地址值改成jmp xxxxxxx(hook函数地址)。知道了syscall的调用模板,自己构造syscall(获取SSN,syscall),即可绕过EDR对API的hook。
学习不同项目对应的手法,如HellsGate、TartarusGate、maven jar源码下载GetSSN、SysWhispers等。这些项目通过遍历解析ntdll.dll模块的导出表,定位函数地址,获取系统调用号SSN,实现动态获取SSN。
使用直接系统调用或间接系统调用,如SysWhispers系列项目的直接系统调用(手搓syscall asm)和间接系统调用(使用用户态API,如kernel.dll中的API)。系统调用号SSN在不同版本的系统下是不一样的,可以参考相关技术博客整理的列表。
SysWhispers2使用随机系统调用跳转(Random Syscall Jumps)避免“系统调用的php源码包安装标记”,通过SW__GetRandomSyscallAddress函数在ntdll.dll中搜索并选择一个干净的系统调用指令来使用。
SysWhispers3引入了egg技术(动态字符替换,汇编指令层次的混淆)和支持直接跳转到syscalls,是spoof call的变体,绕过对用户态asm文件syscall的监控。
HWSyscalls项目通过kernel gadget,跳到ntdll.dll中做间接syscall,更彻底地实现了间接系统调用。
这些项目的实现涉及软件中自定义堆栈流程、硬件断点等技术,通过内核函数调用、动态字符替换、刷钻平台源码异常处理机制等,绕过EDR检测和系统调用监控,实现免杀动态对抗。
针对PostgreSQL数据库从零部署GoldenGate c
从零部署GoldenGate c到PostgreSQL .6的全面指南
作为开源界的佼佼者,PostgreSQL凭借其全面的功能和优秀的生态,在数据库领域备受青睐。自Oracle GoldenGate .3起,对PostgreSQL的支持无疑为其用户群体增添了强大工具。本文将深入阐述如何从零开始在PostgreSQL上部署和配置GoldenGate c,包括数据库的安装、初始化,以及关键的OGG操作,如数据抽取和投递。1. PostgreSQL与OGG基础
OGG利用Extract和Replicat进程,捕获和传递PostgreSQL的存量数据和变化数据,确保数据的实时同步。OGG在适应不同数据库类型时,需要考虑架构、数据类型和对象操作的兼容性,具体限制请参考官方文档。2. 安装与配置过程
2.1 下载:遵循官方源代码安装文档进行。
2.2 安装:如遇到问题,如找不到readline库,可使用yum安装(如`yum install readline-devel`)。
2.3 配置与启动:参考. Server Setup and Operation。
3.1-3.2 GoldenGate c的安装:包括下载安装步骤。
4. 数据同步:包括设置数据库、增量数据抽取、存量数据抽取与投递,以及模拟远程操作。
4.5 卸载与清理
完成部署后,记得清理和卸载以保持系统的整洁。总结全文,本文提供了从零开始在PostgreSQL .6上部署GoldenGate c并实现数据同步的详细步骤,供读者参考。gate in是什么意思?
在软件开发的领域中,"Gate in"通常指的是将源代码提交到版本控制系统中。这个步骤是软件开发过程中非常重要的一个环节,它将确保项目的版本一致性和完整性。在开发过程中,每次完成功能的开发后,开发人员需要将其提交到版本控制系统中,并在提交代码之前,通过一系列的自动化测试来确保代码的质量和稳定性。
"Gate in"还可以指的是软件开发中的一个重要实践,即将代码评审与自动化构建结合起来。这意味着,在提交代码之前,需要通过代码评审的流程,以确保代码的质量。一旦代码评审通过,代码就会自动构建并在几个不同的环境中进行测试,包括集成测试和用户验收测试,以确保代码在不同环境下都能正常工作。
在软件开发的过程中,"Gate in"是保证代码安全性和质量的一个重要环节。通过实现自动化测试和代码评审的流程,可以确保代码的稳定性和质量。在提交代码之前,测试团队会对代码进行全面的测试,以确保代码在各种情况下都是可靠的。这样,可以防止不稳定的代码进入主分支,同时也可以更快的识别和解决问题。正是由于这个原因,"Gate in"成为了软件开发中不可或缺的组成部分。