Linux下预加载型动态库后门
0x00 前言在Linux中,要隐藏指定的文件或进程,常用的技术手段是使用Rootkit。Rootkit可以通过两种方式实现:一种是在内核层面,通过加载内核驱动模块;另一种是在用户层面,通过注入共享动态库。具体到后者,它通过LD_PRELOAD机制预加载一个自定义的共享库,这样当应用程序尝试调用某些标准库函数时,系统会优先使用预加载的共享库中的同名函数,从而实现对原始函数的劫持。通过这种劫持机制,可以操控系统行为,以隐藏特定的文件或进程。
0x01 原理我们可以通过ldd来查看某个程序运行时加载的动态库:
1.动态链接器(Dynamic Linker):当一个程序启动时,动态链接器负责加载程序所需的所有动态库,并解析程序中未定义的符号(如函数和变量)到这些库中定义的符号。2.环境变量LD_PRELOAD:在Linux系统中,LD_PRELOAD环境变量用于指定在程序启动时优先加载的共享库列表。如果在这个列表中指定了一个自定义的SO库,那么这个库将在程序的其他动态库之前被加载。3.符号解析(Symbol Resolution):当动态链接器加载库时,它会按照一定的顺序解析符号。如果在 ...
K8s下的漏洞挖掘思路
0x01 概念容器:容器是一种虚拟技术,与传统的虚拟机(如VMware)相比,容器更加轻量化,不需要虚拟整出个操作系统,仅需要虚拟一个小规模的环境就可以运行,容器以独立进程的方式运行在宿主机上,相互之间共享系统内核。Docker是使用最为广泛的容器技术,只需要将应用程序以及相关依赖关系进行打包,就可以在不同服务器上进行部署运行,并且提供一个与宿主机相互隔离的虚拟环境。
K8s:全称是kubernetes,是谷歌在2014年推出的一种开源容器编排系统,因将k后面的8个字母进行缩写后被广泛简称为K8s,随着容器技术的发展,面临着容器数量庞大、难以管理的问题,K8s的推出很好的解决了这一问题,并且在容器编排系统中占据领先地位。
Pod:K8s中运行的最小调度单元被称为Pod,一个Pod上运行着一个或多个容器,并且在K8s中,每个Pod都会被分配一个虚拟的IP和端口,以确保内部任意两个Pod之间可以直接通信。
Service:K8s中用于具体实现客户端与每个Pod之间通信的一个资源对象,Service一旦被创建,K8s就会为其分配一个集群内唯一、固定不变的虚拟IP地址,叫做ClusterIP( ...
记一次PhotoGrapher靶机渗透
0x00 靶机安装访问下载靶机镜像,解压使用虚拟机打开,网络选择NAT模式
0x01 信息搜集使用netdiscover探测存活主机
1netdiscover
确认靶机地址192.168.92.137
用Nmap探测靶机开放的端口及服务
1nmap -sV -O 192.168.92.137
系统为Linux,并且开放了80、139、445、8000端口,存在http和smb服务。
访问80端口:
扫描web路径:
逐一访问,并没有什么发现
访问8000端口,发现作者信息:Koken
扫描web路径,发现后台地址:
访问后台,登录需要邮箱以及密码
0x02 漏洞利用暂时没有其他突破口,不过主机开启了smb服务,使用enum4linux进行探测
1enum4linux 192.168.92.137
发现用户名及密码为空,并且存在共享路径sambashare
直接挂载访问//192.168.92.137/sambashare,发现两个文件
mailsent.txt:
获取到关键信息邮箱,最后一行的信息应该指的是后台密码
最终使用&# ...
Redis未授权访问
0x00 RedisRedis (REmote DIctionary Server) 是一个使用ANSI C语言编写的开源数据库,通常被称为数据结构服务器,从内存中读取数据,因此性能优越,和MongoDB一样,是目前使用十分广泛的NoSQL(Not Only SQL,非关系型数据库)。
Redis安装完成后,默认不开启用户认证。当配置不当时,造成未授权访问,进行敏感操作,获取权限等。
结合ssrf,探测限制内网访问的redis服务,进一步getshell
0x01 未授权访问1、不存在密码,直接访问1redis-cli -h 192.168.0.4
2、存在密码,爆破配置文件redis.conf中reauirepass提供了一个轻量级的认证,但可以快速爆破。
存在密码:
hydra爆破:
1hydra -P password.txt redis://192.168.0.4
输入密码连接
查看Redis版本、系统相关信息
1info
删除整个数据库
1flushall
0x02 获取权限通过Redis的config命令,设置数据库中待插入的内容,再修改数据库的默认路径和 ...
HTTP请求走私漏洞浅析
0x00 前言HTTP请求走私漏洞(HTTP Request Smuggling)是发生在协议层的一种攻击,最早于2005年就被发现并提出。漏洞发生的主要原因是不同的服务器,对于RFC标准的具体实现不一而导致的。
0x01 漏洞原理HTTP 1.1协议相对于1.0主要引入了两个新的特性: Keep-Alive和pipline
1、Keep-Alive特性具体是指在HTTP请求头中,添加一个参数
1Connection: Keep-Alive
告诉服务器在收到这个请求后不要关闭连接,后面再次发起请求时,继续使用这个TCP连接。
2、pipline特性是指在一次TCP连接中,可以连续不断地发送多个http请求,而不必等待服务器响应。服务器会根据顺序进行处理。
有了这两个特性之后,HTTP 1.1相对于 HTTP 1.0来说,传输效率更高,如今HTTP 1.1也应用最为广泛。
在RFC 2616中规定,一个完整的数据包中需要在请求头部分包含”Content-Length”或者”Transfer-Encoding”来对数据包的长度进行说明。
1、Content-Length: 指明数据包 ...
记一次LazySysAdmin靶机渗透
0x00 前言直接将下载好的靶机文件用虚拟机打开,网络选择NAT模式。写的比较啰嗦,主要是想记录一下完整的思路
0x01 信息搜集用netdiscover探测内网
发现四台主机
分别用Nmap进行探测
1nmap -sV -O 192.168.92.136
发现192.168.92.136这台主机开启了22、80、139、445、3306、6667端口
存在ssh、http、smb服务以及mysql数据库
访问
没有什么发现,用御剑扫路径
逐一访问
robots.txt:
发现路径/Backnode_files/,是个路径遍历
info.php:
wordpress:
是个wordpress搭建的博客,并且获取到信息togie,猜测可能是用户名
phpmyadmin:
而old、wp、test、apache这几个路径都是空的
通过Nmap得知主机存在Samba服务,用enum4linux枚举一下
1enum4linux -a 192.168.92.136
发现用户名、密码都为空
并且存在共享目录//192.168.92 ...
ISCC 2020 web 部分 writeup
##练武题
1、阿森的爱情-1
提交数据抓包
返回包有个set-cookie,添加到cookie里
出来字符串
貌似不是flag…
后来听说直接御剑扫文件..不过环境被删了没继续试。
2、Php is the best language
下载,一个txt文件,打开是php源码
反序列化,构造语句获取payload
Base64解码,得到flag
3、What can images do
看题目的意思大概是上传绕过或是图片马结合文件包含
先尝试绕过,发现是白名单限制+内容检测
上传图片马
在下面发现一个可以文件包含的点
把file1.php改成图片马
图片马被解析,蚁剑找到flag
Web4:未知的风险-1
抓包有个token
应该是jwt
题目说只允许user进入,那就是改user吧,爆破key之后encode提交
参考了文章
擂台题Web1:Easy Injection
Python模板注入
说明{{}}里的语句被执行,利用其读取flag
Payload
{% for c in [].__clas ...
黑客丛林之旅通关攻略
黑客丛林之旅通关攻略1. Level 1
前端验证,右键查看源码就能找到通关密码
New way:
flash,右键->播放,播放完会自动跳转到第二关
2. Level 2
方法一:
右键查看源码,看到是前端函数验证
直接F12,绕过chkPassword()
随便输入密码,点击Go就会跳转到下一关
方法二:
查看源码,发现有一个被隐藏的参数act,值为pass2
在url中添加这个参数
访问会直接跳转到第三关
3. Level 3
Burp抓包
看到数据包中有login参数,把login的值改为yes就行
或者f12直接改Cookie
改完之后重新访问页面就行
4. Level 4
摩斯密码
对照摩斯密码表解密
密码是IAMOK
New way:
既然是摩斯密码,那这里的名字应该就是摩斯吧
Morse
5. Level 5
把提示语中的两段密码分别进行base64解密和md5破解
base64:
md5:(不过这个不能过关)
6. Level 6
mstsc想到Windows远程桌面连接,默认端口是3389
vnc是Linux的远程桌面连接服务,默认端口是 ...
setoolkit-网站钓鱼获取账户密码
setoolkit-网站钓鱼获取账户密码平台:kali
工具:setoolkit
Social-Engineer Toolkit,简称setoolkit,是一款社会工程学工具集。
主要功能:
1、鱼叉式网络钓鱼攻击
2、网页攻击
3、传染媒介式(俗称木马)
4、建立payloaad和listener
5、邮件群发攻击(夹杂木马啊payload的玩意发给你)
6、Arduino基础攻击
7、无线接入点攻击
8、二维码攻击9、Powershell攻击 (引用https://www.freebuf.com/sectool/73409.html)
本文使用seetoolkit克隆某登录页面,进行钓鱼攻击,获得他人的账号。(只适用于http)
启动setoolkit:
setoolkit
依次选择:
Social-Engineering Attacks(社会工程攻击)-> Website Attack Vectors(网站攻击载荷) -> Credential Harvester Attack Method(凭据收割机攻击方法)
此时有:
1) Web Tem ...
XXE外部实体注入
XXE外部实体注入学习XXE漏洞,先要了解XML语言
XML:可扩展标记语言一种用于标记电子文件,使其具有结构性的语言。 设计的宗旨是传输数据,而不是显示数据,XML本身是用来存储数据的纯文本,不会做任何事情。
XXE: 外部实体注入属于一种注入类型攻击:XML注入
一个典型任意文件读取攻击:
1、XML声明:对XML文档进行声明,告诉服务器,这里是XML文档。同php中的类似。2、DTD部分:定义XML变量。如图中定义变量xxe的值为file:///etc/passwd3、XML部分:调用XML变量,进行攻击。
造成XXE的原因:php中存在simplexml_load_string()函数,作用是将XML转换为对象。可以理解为使用了这个函数后,php对XML进行了解析。
接下来搭建攻击环境,服务器上创建XXEtest.php:
正常访问:
1、任意文件读取为了读取服务器D:\phpStudy\WWW\flag.php内容
攻击:改请求包POST格式,插入payload
base64解码
payload:
<?xml ver ...