红日靶场-1
靶场说明虚拟机的统一密码:
hongrisec@2019//有些靶机密码过期需要更改,统一改成下面这个Hongrisec@2019
官方的靶场描述
一、环境搭建1.环境搭建测试2.信息收集
二、漏洞利用3.漏洞搜索与利用4.后台Getshell上传技巧5.系统信息收集6.主机密码收集
三、内网搜集7.内网–继续信息收集8.内网攻击姿势–信息泄露9.内网攻击姿势-MS08-06710.内网攻击姿势-SMB远程桌面口令猜测11.内网攻击姿势-Oracle数据库TNS服务漏洞12.内网攻击姿势-RPC DCOM服务漏洞
四、横向移动13.内网其它主机端口-文件读取14.内网其它主机端口-redis15.内网其它主机端口-redis Getshell16.内网其它主机端口-MySQL数据库17.内网其它主机端口-MySQL提权
五、构建通道18.内网其它主机端口-代理转发
六、持久控制19.域渗透-域成员信息收集20.域渗透-基础服务弱口令探测及深度利用之powershell21.域渗透-横向移动[wmi利用]22.域渗透-C2命令执行23.域渗透-利用DomainFronting实现对be ...
常见webshell流量分析
webshell常见的流量特征:
网络通信模式:Webshell工具通常会与控制服务器进行通信,通过特定的网络协议传输数据。这些通信模式与正常的网络通信模式存在差异,如使用非标准端口、频繁的连接和断开等。
数据传输方式:Webshell工具可能使用加密或编码的方式传输数据,以隐藏其真实目的和内容。对于电子数据取证来说,需要解密或解码这些数据,以还原其原始内容。
文件操作行为:Webshell工具通常会对服务器上的文件进行读取、写入、删除等操作。这些文件操作行为可能涉及到敏感文件、系统文件或与被攻击的Web服务器相关的文件。通过分析这些文件操作行为,可以发现潜在的Webshell存在。
系统调用和命令执行:Webshell工具可能会利用系统调用和命令执行来执行一些恶意操作,如执行命令、修改系统配置等。通过监测和分析系统调用和命令执行的行为,可以发现Webshell的存在。
这里学习参考文章:https://www.forensics-wiki.com/linux/webshell/
菜刀中国菜刀 (Chopper) 是一款经典的网站连接工具支持的服务端脚本有 PHP、ASP、ASPX ...
xss学习
xss简介XSS全称为Cross Site Scripting,为了和CSS分开简写为XSS,中文名为跨站脚本。该漏洞发生在用户端,是指在渲染过程中发生了不在预期过程中的JavaScript代码执行。XSS通常被用于获取Cookie、以受攻击者的身份进行操作等行为。
xss分类参考文章:https://zhuanlan.zhihu.com/p/397940947
反射型xss反射型xss的攻击流程:
反射型是比较常见的,他通常需要用户点击攻击者制作的链接才会触发,比如一个网站有这样的代码:
<?php echo "<p>hello, $_GET['user']</p>";?>
那么我们可以制作一个url带上js代码给用户点击
/?user=</p><script>alert("hack")</script><p>
这样用户点击该链接后就会运行js代码
该方法收到Auditor、NoScript等防御手段影响较大
XSS Auditor: ...
哈希长度拓展攻击
在某新生赛看到的,来学习一下,参考文章:https://www.cnblogs.com/yunen/p/13624595.html
MD5算法原理先具体看一下md5算法的原理是怎么样的然后来看一看具体的题目
这里放一张流程图:
整体的算法流程就是,将数据分块,每512位为一块,有一个初始序列,与第一个数据块进行运算,然后产生一个新的序列,继续与下一个数据块进行计算,以此类推。
一个512位的数据块就是64个字符的大小,对MD5来说最后一个数据块的处理分为两种情况:
明文数据的二进制数据长度<=448,填充padding(无意义占位)数据使其长度为448,再添加原始明文数据的二进制长度信息(64位)使其长度为512位即可。
448<明文数据的二进制数据长度<=512,填充padding数据至下一块的448位,而后再添加原始明文数据的二进制长度信息(64位)使其长度为512位即可。
这里借文章大佬的两张图:
这是第一种情况的
这是第二种情况的
上图可以知道,padding的数据的特点是首位为1,后面都是0
要注意一点长度信息位是从低位 ...
ctfshow_web859
这是一道ctfshow上面的渗透题,来自2023年2月的RealWorldCTF渗透赛环境,提供了跳板机,这里来打一打学习一下。
信息搜集
先用Termius连接跳板机,然后使用如下命令获得一个交互式shell方便一点
sudo -s #切换到root用户python3 -c "import pty;pty.spawn('/bin/bash')" #获得交互式shell
然后上传fscan上去扫一下,这里先用Termius的sftp发现传不了失败了
但是可以用scp来传
scp命令 用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。
scp -P 28260 fscan_amd64 ctfshow@pwn.challenge.ctf.show:/tmp #将fscan上传到/tmp目录下面
然后进行扫描看看
./fscan_amd64 -h 172.2.90.0/24 > fscan.txt #保存到文件下面方便查看
这是扫描结果
然后再单独扫一下 ...
waf绕过学习
来学习一下waf的相关知识,参考文章:https://www.kancloud.cn/noahs/src_hacker/2395057
https://xz.aliyun.com/t/12684?time__1311=mqmhDvqIOaGNDQtiQGkIfdAI3GKA9xhD&alichlgref=https%3A%2F%2Fwww.google.com%2F
WAF的分类
软件装在主机侧(服务器)上的软件,如安全狗、D盾、云锁等。
硬件装在企业链路上的,所有流量都要进过的硬件,一般由厂商安装,其串联在内网交换机,防护范围大。
云waf通过DNS解析到云WAF,访问网站的流量要经过指定的DNS服务器解析,然后进入WAF节点进行过滤,最后访问原始服务器,如阿里云、腾讯云之类。
WAF工作原理处理流程大致分为四部分:预处理、规则检测、处理模块、日志记录
预处理
接收到数据请求流量时,先判断该请求是否白名单,如果在白名单内直接交给服务器响应,否则解析后进入到规则检测。
规则检测
数据解析后就会进入到WAF的检测体系中进行规则匹配,检查是否符合要求。
处理模块
针对检测结果,符 ...
Tomcat常见漏洞
来学习一下Tomcat常见的漏洞。
Tomcat是什么tomcat就是一个免费的web服务器,和apache相同性质,主要用于jsp框架的网站,可以看作是apache的一个扩展,但是运行的时候是和apache属于不同进程的。
Tomcat的目录结构
bin:存放tomcat的脚本文件,例如启动、关闭
conf:存放tomcat的配置文件,例如server.xml、web.xml
lib:存放tomcat运行所需要的库文件(jar包)
log:存放tomcat执行时的log文件
temp:存放tomcat运行时产生的临时文件
webapps:Web发布目录,默认情况下Web应用文件存放于此目录
work:存放jsp编译后产生的class文件
介绍一些重要的配置文件:
server.xml:配置tomcat的启动端口号、host主机、Context等
web.xml:部署描述文件,该文件描述了一些默认的servlet,部署每个webapp时都会调用这个文件
tomcat-users.xml:tomcat的用户密码与权限
常见绕过手法Windows
利用/shell.j ...
Kerberos攻击专题
Kerberos认证基础在内网渗透中,Kerberos认证协议是基于票据的一种认证方式,由美国麻省理工学院发明,简单理解可以分为三部分:用户(Client)、服务器(Server)和 KDC(Key Distribution Center,密钥分发中心)。KDC包含AS(Authentication Server,认证服务器)和TGS(Ticket Granting Server,票据授权服务器)。
Kerberos基础认证流程其流程图如下:
解释如下:
AS_REQ。CIient向AS发起AS_REQ,请求内容为通过Client的哈希加密的时间戳、ClientID 等内容。
AS_REP。AS使用Client密码哈希值进行解密,如果解密正确,就返回用krbtgt的 NTLM-hash 加密的 TGT(Ticket Granting Ticket,票据授权凭证)票据。TGT 包含 PAC(Privilege Attribute Certificate,特权属证书),PAC包含 Client的相关权限信息,如 SID及所在的组。简单理解,PAC就是用于验证用户权限,只有KDC能制作和 ...
w1r3s.v1.0.1靶场学习
靶场介绍这是一个vulnhub里的一个初级的渗透靶场,主要是为了熟悉一下各个信息搜集工具的使用,以及跟着红队笔记的视频来学习一下渗透思路打一下基础。
这里的环境就一台靶机,直接打开vmx即可进行测试。
信息搜集主机存活探测渗透第一步需要做的就是信息搜集,我们先要确定主机的存活,确认我们要攻击的主机。
这里用几种方式来进行探测主机存活
namp
namp -sn 192.168.20.0/24 # -sn 采用四种不同类型的数据包探测目标主机是否在线,只进行主机探测不进行端口扫描
arp-scan
arp-scan -l
经过上面两种探测之后可以知道我们的目标靶机就是192.168.20.129,接下来就是对端口进行扫描搜集一下有哪些服务
端口扫描探测nmap -sT 192.168.20.129 # -sT 使用TCP进行端口扫描#还可以用这个命令扫描制定其他要求nmap -sT --min-rate 10000 -p- 192.168.20.129 -oA nmap/ports# --min-rate,设置最低发包速率,这里为每秒一万次;-p- 是扫描1-65535端口的简化 ...
内网权限持久化
权限持久化(Persistence,权限维持)技术就是包括任何可以被测试人员用来在系统重启、更改用户凭据或其他可能造成访间中断的情况发生时保持对系统的访问的技术,如创建系统服务、利用计划任务、滥用系统启动项或注册表、映像劫持、替换或劫持合法代码等。
常见系统后门技术创建影子账户就是创建隐藏的用户,无论通过计算机管理还是命令行查询都无法看到,只能在注册表中查到其信息。
下面是创建影子账户的步骤:
输入下面命令创建一个Hacker$用户
net user Hacker$ Hacker@123 /add # 创建隐藏用户,$符号代表该用户为隐藏用户
不过现在还是可以看到该用户
此时该用户仍为标准用户,我们还需要进行注册表的修改
在注册表编辑器中定位到HKEY_LOCAL_MACHINE\SAM\SAM,单击右键,在弹出的快捷菜单中选择“权限”命令,将 Administrator用户的权限设置为“完全控制”
在注册表项 HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names处选择 Administrator 用户,在左侧找到与 ...