0%

编译,链接与装载执行

大概是rCore-Tutorial系列文章的第一篇。该tutorial大致教学从从头用rust写一个miniOS,加强一下对操作系统的理解
首先来到迷之补基础环节

编译

最初的问题是来自于当初写go的时候的,因为虽然接触了java,js,python,PHP等一众语言,但编译型语言终究只学了大一时的那一点点C++,因此对go,rust等语言的编译情况产生了简单的困惑。

C/go/rust编译差异

阅读全文 »

CobaltStrike SSL证书配置

起因是我发现我的机器由于长期挂着CS的服务端,然后导致我被扫描器发现,并且把我的机器标记成威胁服务器了。。。。
而为了隐藏CS服务端的信息,就需要从几个方面进行改造,其中之一就是经典的ssl证书配置,而其实CS主要需要配的证书有两个:cobaltstrike.store&https-certificate

期间踩了一个很大的坑,关于在win7等较老机器上使用https出现的tls版本问题

cobaltstrike.store

teamserver脚本中用keytools生成了一个特征及其明显的自签发证书。该证书仅用于客户端与服务端之间的通信,当然,被扫出来就会是及其明显的服务端标记特征。我估摸着也就是扫描器扫到这个证书然后给我标记了。。。

阅读全文 »

ASLR与PIC与PIE

简单的说就是看计算机基础的时候想起来函数调用的地址应当是在编译时确定的,而ASLR在运行时会对内存地址进行高强度随机化,那这样一来编译时写死的东西不就跑不起来了?然后开始的纠结和挣扎。二进制基础->0太难了啊。

PLT&GOT

PLT与GOT表,这个是属于之前二进制入门的时候就学过的东西了。PLT位于代码段,可读可执行,GOT表位于数据段,可读可写。PLT和GOT表是动态链接时延迟加载的必备条件。PLT指向GOT表表项,GOT表初始每一项都指向PLT开始处的resolver,当函数第一次被调用时resolver解析函数加载在内存中的地址回填GOT表,即可实现对动态链接运行时加载的函数位置重定向。动态链接库声明的变量理论上来说也位于GOT表中。

ASLR

阅读全文 »

windows免杀入门

护网的时候遇到了一台火绒+windows defender+360拉满的机器,那个时候凭借我们的垃圾技术,完全打不进去,最后是学弟不知道加了多少buff用奇怪的套壳软件给套过去了,现在尝试着进行基础学习。

周末尝试和katzebin去看defcon qual,比去年还坐牢。。。

去年唯一一个web是一个解混淆的题,我还后续好歹学了下AST长点知识,今年这个题真有点莫名其妙,感觉吧,和web关系要大不大要小不小,完全看不懂。自闭了

然后还是继续学点windows吧。。。

阅读全文 »

ATT&CK靶场(1)练习

更多的应该是工具入门和思路学习?对windows的漏洞及其原理所知甚少

工具入门

Meta Sploit Framework

简称msf,应该是最常用的工具了。遇到可能的洞的攻击手法即为msf一把梭
msf的常用模块为msfvenom和msfconsole,venom负责生成用于上线的木马,console则是主要交互手段

阅读全文 »