IceTHM
端口扫描 nmap --min-rate=10000 -p- ice.thm Starting Nmap 7.93 ( https://nmap.org ) at 2024-04-02 11:57 UTCWarning: 10.10.109.255 giving up on port because retransmission cap hit (10).Nmap scan report for ice.thm (10.10.109.255)Host is up (0.017s latency).Not shown: 63585 closed tcp ports (reset), 1938 filtered tcp ports (no-response)PORT STATE SERVICE135/tcp open msrpc139/tcp open netbios-ssn445/tcp open microsoft-ds3389/tcp open ms-wbt-server5357/tcp open wsdapi80 ...
24-3杂谈
三月份还是比较开心的吧hh,完成了第一首处女作,虽然有些仓促。好像学习了还蛮多的东西,docker,k8s之类的云安全也接触了一些,总之比较杂吧。以及哲学上的学习还是收获蛮大的
LinuxFunctionHookingTHM
在这个房间里,我们将研究 *Shared Libraries*, 什么是 *Function Hooking* 以及我们如何利用 *LD_PRELOAD* 做同样的事情!我试图让这个房间尽可能简单,但一些基本的C理解肯定是有用的!
What are Shared Libraries?What Are Shared Libraries?
共享库是预编译的C代码,在生成可执行文件的最后步骤中链接。它们提供可重用的功能,如函数、例程、类、数据结构等,然后可以在编写自己的代码时使用它。
公共共享库,
libc : The standard C library.
glibc:GNU标准libc的实现。
libcurl:多协议文件传输库。
libcrypt:C库,用于加密,哈希,编码等。
关于共享库,需要知道的重要一点是,它们包含程序在运行时所需的各种函数的地址。
例如,当动态链接的可执行文件发出read()系统调用时,系统会从libc共享库中查找read()的地址。现在,libc对read()有了一个定义良好的定义,它指定了函数参数的数量和类型,并期望返回特定类型的数据。通常,系统知道在哪里 ...
打靶记录(一一二)之THMDebug
端口扫描nmap --min-rate=10000 -p- debug.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-27 11:24 UTCNmap scan report for debug.thm (10.10.2.3)Host is up (0.0060s latency).Not shown: 65533 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh80/tcp open httpMAC Address: 02:39:10:22:A6:7F (Unknown)Nmap done: 1 IP address (1 host up) scanned in 3.45 seconds
nmap -sC -sT -sV -O -p22,80 debug.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-27 11:25 UTCNmap scan report for debug.thm ( ...
打靶记录(一一一)之THMUmbrella
端口扫描nmap --min-rate=10000 -p- umb.thmStarting Nmap 7.93 ( https://nmap.org ) at 2024-03-26 12:01 UTCNmap scan report for umb.thm (10.10.227.222)Host is up (0.0100s latency).Not shown: 65531 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh3306/tcp open mysql5000/tcp open upnp8080/tcp open http-proxyMAC Address: 02:51:6F:5C:2F:11 (Unknown)Nmap done: 1 IP address (1 host up) scanned in 4.12 seconds
nmap -sC -sT -sV -O -p22,3306,5000,8080 umb.thmStarting Nmap 7.93 ( https://nmap. ...
打靶记录(一一零)之THMPeakHill
端口扫描nmap --min-rate=10000 -p- 10.10.2.217Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-21 15:34 UTCNmap scan report for ip-10-10-12-153.eu-west-1.compute.internal (10.10.2.217)Host is up (0.022s latency).Not shown: 65531 filtered tcp ports (no-response)PORT STATE SERVICE20/tcp closed ftp-data21/tcp open ftp22/tcp open ssh7321/tcp open swxMAC Address: 02:AE:DB:BF:76:C3 (Unknown)Nmap done: 1 IP address (1 host up) scanned in 13.79 seconds
nmap -sC -sT -sV -O -p21,22,7321 10. ...
IntrotoLogsTHM
Expanding Perspectives: Logs as Evidence of Historical Activity在数据的核心:
就像一棵实体树的年轮揭示了它的生命历程一样–厚的年轮表示好的年份,薄的年轮表示有挑战性的年份–数字日志提供了系统活动的历史记录。
日志是系统内事件的记录。 这些记录提供了系统一直在执行的操作的详细说明,捕获各种事件,例如用户登录、文件访问、系统错误、网络连接以及数据或系统配置的更改。
虽然具体细节可能因日志类型而异,但日志条目通常包含以下信息:
记录事件的时间戳
生成日志条目的系统或应用程序的名称
发生的事件类型
有关事件的其他详细信息,例如发起事件的用户或生成事件的设备的 IP 地址
此信息通常存储在日志文件中,其中包含系统上任何给定时间发生的事件的聚合条目。
然而,由于数字交互是连续且快节奏的,日志文件的大小可能会根据系统上记录的活动呈指数级增长。
阅读的真正力量:语境相关性
单个日志条目本身可能看起来微不足道。但是,当日志数据被汇总、分析并与其他信息源交叉引用时,它就成为了一种强有力的调查工具。客户可以回答有关事件的关键问题,例 ...
k8s入门初学习
简介Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
在Kubenetes中,所有的容器均在Pod中运行,一个Pod可以承载一个或者多个相关的容器,在后边的案例中,同一个Pod中的容器会部署在同一个物理机器上并且能够共享资源。一个Pod也可以包含O个或者多个磁盘卷组(volumes),这些卷组将会以目录的形式提供给一个容器,或者被所有Pod中的容器共享,对于用户创建的每个Pod,系统会自动选择那个健康并且有足够容量的机器,然后创建类似容器的容器,当容器创建失败的时候,容器会被node agent自动的重启,这个node agent叫kubelet,但是,如果是Pod失败或者机器,它不会自动的转移并且启动,除非用户定义了 replication controller。
minikube一个轻量级得k8s实现,部署仅包含一个节点的简单集群
curl -LO https://storage.googleapis.com/m ...
shell编程练习(一)
1给定一个文本文件 file.txt,请只打印这个文件中的第十行。
示例:
假设 file.txt 有如下内容:
Line 1Line 2Line 3Line 4Line 5Line 6Line 7Line 8Line 9Line 10
你的脚本应当显示第十行:
Line 10
解:
sed -n '10p' file.txt
-n 指除了第十行都不打印
awk 'NR == 10' file.txt
NR 是 awk 内置的一个变量,表示当前处理的行号(行号从1开始)。这个模式表示如果当前行号等于10,则匹配成功。
tail -n +10 file.txt | head -1
tail -n +10 从文件的第十行开始打印,head -1 从头开始打印一行
2给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个单行 bash 脚本输出所有有效的电话号码。
你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字)
你也可以假设每行前后没有多余的空格字符。
示例:
假设 fi ...
打靶记录(一零九)之THMCMSplit
端口扫描nmap --min-rate=10000 -p- 10.10.239.126Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-19 10:49 UTCNmap scan report for ip-10-10-239-126.eu-west-1.compute.internal (10.10.239.126)Host is up (0.021s latency).Not shown: 65533 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh80/tcp open httpMAC Address: 02:11:25:0E:D4:A9 (Unknown)Nmap done: 1 IP address (1 host up) scanned in 7.23 seconds
nmap -sV -sC -sT -O -p22,80 10.10.239.126Starting Nmap 7.93 ( https://nmap.org ) at 2024-03 ...
打靶记录(一零八)之THMMustacchio
端口扫描nmap --min-rate=10000 -p- 10.10.155.198Starting Nmap 7.93 ( https://nmap.org ) at 2024-03-18 08:34 UTCNmap scan report for ip-10-10-240-97.eu-west-1.compute.internal (10.10.155.198)Host is up (0.0038s latency).Not shown: 65532 filtered tcp ports (no-response)PORT STATE SERVICE22/tcp open ssh80/tcp open http8765/tcp open ultraseek-httpMAC Address: 02:3D:37:D2:CB:0F (Unknown)Nmap done: 1 IP address (1 host up) scanned in 13.78 seconds
nmap -sC -sT -sV -O -p22,80,8765 10.10.155.198S ...
TmuxTHM
首先,让我们安装tmux。这可以在Ubuntu/Kali上使用命令:apt-get install tmux
安装tmux后,让我们启动一个新的会话。我们使用什么命令来启动一个没有自定义名称的新会话?
tmux
所有tmux命令都以键盘按钮组合开始。这个组合的第一个关键词是什么?
Control
第二个关键词呢?注意,这些键必须同时按下,并在按下组合中的下一个目标键之前释放。
B
让我们继续并从我们新创建的tmux会话中分离。我们需要在组合键中添加什么键才能分离?
D
好吧,我们已经脱离了我们的会议。我们如何列出所有的会话?
tmux ls
当我们创建一个没有设置名称的会话时,会话名称默认为什么?
0
现在我们已经找到了会话的名称,如何附加到它?
tmux a -t 0
让我们继续并在此会话中创建一个新窗口。为了达到这个目的,我们应该在组合键中添加什么键呢?
呼!现在有很多输出可以使用!如果您使用的是像我这样相对较小的终端,则此输出可能无法同时显示在屏幕上。为了解决这个问题,让我们进入“复制模式”。我们要在组合键里加什么键才能进入复制模式?
[
复制模式非常类似于“较少”,并允许使用 ...