既然程序最终都被变成了一条条机器码去执行,那为什么同一个程序,在同一台计算机上,在Linux下可以运行,而在Windows下却不行呢?
链接是代码生成可执行文件中一个非常重要的过程。我们在使用一些库函数时,有时候需要链接库,有时候又不需要,这是为什么呢?了解一些链接的基本过程,能够帮助我们在编译时解决一些疑难问题。比如,下面就有一种奇怪的现象。
备注:我用的香港服务器,听说海外机器安装docker、拉Windows镜像快一些,其中docker的安装貌似是从onegetcdn.azureedge.net这个站点下载数据的,这个站点在全球没有分布于国内的节点,只有海外节点,所以用国外服务器来搞会快一些。
腾讯云windows公共镜像买的机器,不论你机器的vpc网段是啥,永久路由似乎是固定的。
在Windows平台上,许多优秀的开源作者已经为我们提供了相当好用的 Let s Encrypt 客户端:
最近在刷题的时候遇到了很多elf文件,虽然可以通过ida分析伪代码解出来,但是发现有些通过动态调试的方式可以直接找到flag,这样简单了不少,因为之前接触的linux下的逆向题目比较少,所以通过这次刷题也记录一下动态调试elf文件的几种方式。
这里发现一个疑似后台地址,访问http://192.168.2.252/administrator/
也可以通过reg配置文件的方式启动:regedit /s startrdp.reg
最近刚开始学习逆向(Reverse Engineering), 发现其学习曲线也是挺陡峭的, 而网上的 许多writeup文章主旨总结就六个字:“你们看我屌吗?” …几近炫技而对初学者不太友好. 所以
由于两个系统设定时间时以主板CMOS内的时间为依据,但却有不同的时间计算标准。所以导致了系统时间的纠纷问题。 Linux和苹果操作系统以当前主板CMOS内时间做为格林威治标准时间,再根据系统设置的时区来最终确定当前系统时间(如时区设置为GMT+08:00北京时间时以及当前CMOS时间为03:00,那么系统会将两个时间相加得出显示在桌面的当前系统时间为11:00)。 Windows操作系统却直接把CMOS时间认定为当前显示时间,不根据时区转换。这样每调整一次系统时区,系统会根据调整的时区来计算当前时间,确定后,也就同时修改了CMOS内的时间(即每调整一次时区,设置保存后,CMOS时间也将被操作系统改变一次,注意不同操作系统调整时间后,也会同时改变CMOS时间,这一点是共通的)。 这里我们且不论两种时间计算标准的好差,而仅让Windows认定CMOS时间为格林威治标准时间来消除操作系统之间认定时间的差异,从而解决Windows操作系统与不同操作系统并存时出现的时间认定纠纷。。。(怎么改Ubuntu参见2楼xport的回帖:)) 其实Windows注册表内已经隐藏了这样一个开关。瀑布汗,那么就拿它来开刀了。。。 即在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\中添加一项数据类型为REG_DWORD,名称为RealTimeIsUniversal,值设为1。
当时觉得jupyter notebook难看的时候,我就寻思有没有大神做过某些工具来更改样式,毕竟肯定不止我一个人觉得丑,程序员越牛逼,往往Ta就越挑剔。果不其然,经过网上的一番搜索之后,在GitHub上发现了某位大佬的开源项目——jupyterthemes!
就此我先询问了 CTP 官方交流群,官方给出的解答是,需要链接新的信息采集的库 WinDataCollect。
多线程编程在现代软件开发中是如此的重要,以至于熟练使用多线程编程是一名合格的后台开发人员的基本功,注意,我这里用的是基本功一词。它是如此的重要,所以您应该掌握它。本文将介绍多线程的方方面面,从基础的知识到高级进阶。让我们开始吧。
SCShell是无文件横向移动工具,它依赖ChangeServiceConfigA来运行命令。该工具的优点在于它不会针对SMB执行身份验证。一切都通过DCERPC执行。无需创建服务,而只需通过ChangeServiceConfigAAPI 远程打开服务并修改二进制路径名即可(所以要事先知道目标上的服务名称)。支持py和exe两种文件类型。
更改 Windows 对硬件时间的解释方式。以管理员身份打开 CMD,运行以下命令:
为什么我们需要白加黑这种攻击方法呢?答:降本增效,我们知道在以后AI+安全崛起的大背景下,社工将会成为攻防演练项目中,成本最低,效率最高的一种攻击方式,而这个时候"白加黑"的成本优势就体现的淋漓尽致了。
Cisco Discovery Protocol(CDP)协议是用来发现局域网中的Cisco设备的链路层协议。
下述方案是nfs协议cfs的方案,smb协议的windows系统默认就支持,直接执行命令挂载,挂载命令在cfs控制台点开cfs实例后有完整命令,复制即可,如果有报错,参考官网文档或下面方案
响应时间:指的就是,我们执行一个程序,到底需要花多少时间。花的时间越少,自然性能就越好。 吞吐率:在一定的时间范围内,到底能处理多少事情。这里的“事情”,在计算机里就是处理的数据或者执行的程序指令。
Linpmem是一款功能强大的Linux物理内存提取工具,该工具专为x64 Linux设计,可以帮助广大研究人员在执行安全分析过程中快速读取Linux物理内存数据。
title: WinSock 重叠IO模型 tags: [WinSock 模型, 网络编程, 重叠IO模型] date: 2018-06-29 20:26:13 categories: Windows 网络编程 keywords: WinSock 模型, 网络编程, 重叠IO模型 --- 之前介绍的WSAAsyncSelect和WSAEvent模型解决了收发数据的时机问题,但是网卡这种设备相比于CPU和内存来说仍然是慢速设备,而调用send和recv进行数据收发操作仍然是同步的操作,即使我们能够在恰当的时机调用对应的函数进行收发操作,但是仍然需要快速的CPU等待慢速的网卡。这样仍然存在等待的问题,这篇博文介绍的重叠IO模型将解决这个等待的问题
2020年3月10日,微软在其官方SRC发布了CVE-2020-0796的安全公告(ADV200005,MicrosoftGuidance for Disabling SMBv3 Compression),公告表示在Windows SMBv3版本的客户端和服务端存在远程代码执行漏洞。同时指出该漏洞存在于MicroSoft Server Message Block 3.1.1协议处理特定请求包的功能中,攻击者利用该漏洞可在目标SMB Server或者Client中执行任意代码。 该漏洞的后果十分接近永恒之蓝系列,都利用Windows SMB漏洞远程攻击获取系统最高权限,WannaCry勒索蠕虫就是利用永恒之蓝系列漏洞攻击工具制造的大灾难。除了直接攻击SMB服务端造成RCE外,该漏洞得亮点在于对SMB客户端的攻击,攻击者可以构造特定的网页,压缩包,共享目录,OFFICE文档等多种方式触发漏洞进行攻击。
在上一篇文章中,介绍了PE_to_shellcode这个项目,并简单提了一句原理,本节就详细讲解一下PE是如何转化为shellcode的。
一般是不建议禁止defender自动更新或者彻底关闭Defender的,但如果你有其他替代的安全方案了,觉得defender有干扰业务隐患,想干掉,那这篇文档非常适用。耗费了不少心血在server2016-2022和win10、win11上对比实践。
周末在家闲着没事突然就想搞事了,然后使用Google hack语法输入inurl:xxx.xxx.xxx/upload批量搜索可能存在上传点的网站,试了好几个最后找到一个可利用的上传点。
我们每个程序员或许都有一个梦,那就是成为大牛,我们或许都沉浸在各种框架中,以为框架就是一切,以为应用层才是最重要的,你错了。在当今计算机行业中,会应用是基本素质,如果你懂其原理才能让你在行业中走的更远,而计算机基础知识又是重中之重。下面,跟随我的脚步,为你介绍一下计算机底层知识。
在Windows中,服务是指在Windows操作系统中运行的后台程序。在Windows中可以配置特定事件发生时执行某项服务,或按需启动。它们通常用于执行系统级任务,例如执行定时任务、管理网络连接或监控系统性能。在Windows中创建服务,我们可以指定运行者权限,并且设置启动类型为自动、手动或禁用。Windows提供了SCM用作服务管理,而我们可以通过sc或者Windows API——OpenSCManagerA——来远程连接SCM管理Windows服务。
Windows下服务的权限通常是SYSTEM。如果我们能够替换服务的启动程序为我们的恶意程序(如反弹shell),即相当于获得了SYSTEM权限,达到了提权的目的。 无引号服务路径有可能会导致这种情况的发生。 所谓无引号服务路径,就是服务启动程序的路径中包含了空格且未被引号包含起来。比如这样
学习WindowsAPI. 之前.我们必须理解什么是进程. 在windows环境下.进程就是一个运行起来的exe程序
大周末的,收到客户发来的《网络安全隐患告知书》,里面有个主机扫描报告,有个中危漏洞需要修复,客户修复不了,找过来,漏洞如下:
因为我们的嵌入式设备使用的是C语言,所以如何不想自己从头造轮子的话,就需要找一个比较合适的C语言的二维码生成的库。
乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
对于大内存的机器,如果系统盘剩余空间不是特别富余、又不想把memory.dmp放到数据盘,可以配置kernel dump,设置为物理内存的30%,参考https://cloud.tencent.com/developer/article/2345491
1、按 Shift+F10 打开 cmd执行这2句命令启用Administrator
这是微软2018年上半年发布的安全更新导致的CredSSP报错,这个更新涉及服务端、客户端,简单说,要么都别装,要么都装,一个装、一个不装就会有问题。跟"身份验证错误,要求的函数不受支持,CredSSP"类似的还有“远程计算机需要网络级别身份验证,而您的计算机不支持该验证。请联系您的系统管理” "The remote computer requires Network Level Authentication, which your computer does not support. For assistance, contact your system administrator or technical support." ,还有其他类似的:
C 语言的奇技淫巧 https://jin-yang.github.io/post/program-c-tips.html
概述:NVM Express(NVMe),或称非易失性内存主机控制器接口规范(英语:Non Volatile Memory Host Controller Interface Specification,缩写:NVMHCIS),是一个逻辑设备接口规范。它是与AHCI类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过PCI Express(PCIe)总线附加的非易失性存储器介质(例如采用闪存的固态硬盘驱动器),虽然理论上不一定要求 PCIe 总线协议。
bof能够加载并执行C/C++编译后但未链接的目标obj文件(linux中的.o文件)。可以在beacon中执行内部的beaconAPI和Win32API。它的体积很小,在beacon进程内部运行,不会创建新进程,所以可以有效的规避一些EDR。
没有公网的cvm访问同地域cos是走内网的,很方便,但是cos链接一般是https的,在没有公网的cvm里用IE浏览器是一直转圈
黑石或其他物理机除外,仅限普通云服务器,简单点的话,就是能访问公网的≥2016的高版本系统,以管理员身份打开powershell命令行执行这2句命令即可
我在野外看到了各种恶意 LNK 文件。这些链接文件通常执行下载外部有效负载的脚本(Powershell、VBScript 等)。
3.单核CPU可以实现多线程. 几秒钟换一次线程执行不同进程的代码.就实现了多线程.
远程win10经常卡在登录界面,我从微软官网收集了一些优化命令,vnc登录后,以管理员身份打开cmd命令行执行完这些命令后,运行services.msc找到远程服务(remote desktop services),重启它
OLLVM(Obfuscator-LLVM)是瑞士西北应用科技大学安全实验室于2010年6月份发起的一个项目,该项目旨在提供一套开源的针对LLVM的代码混淆工具,以增加逆向工程的难度, 只不过Ollvm仅更新到llvm的4.0,2017年开始就没再更新。
上一篇文章中,我们结合此前已经介绍过的一系列知识,成功的将内核载入内存并进入到了保护模式中。 实战操作系统 loader 编写(上) — 进入保护模式
一般是不建议禁止defender自动更新的,但如果你有其他替代的安全方案了,觉得defender自动更新有隐患,想干掉,那这篇文档非常适用。耗费了不少心血在server2016-2022和win10、win11上对比实践。
参考:https://blog.csdn.net/bankpan/article/details/45293293
An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full
SEH中文全称:结构化异常处理。就是平时用的__try __finally __try __except,是对c的扩展。
问题:Win11系统,StartAllBack在系统更新后导致explorer闪屏
领取专属 10元无门槛券
手把手带您无忧上云