Web安全学习01—HTML基础

首先关于HTML学习的网站推荐

W3school,注意不是W3cschool!!https://www.w3school.com.cn/html/index.asp

菜鸟教程:https://www.runoob.com/html/html-tutorial.html

0x00 简单的HTML页面架构

<!DOCTYPE html> 
<html>                              <!-->标签成对出现,/表式闭合标签<-->
    <head>
        <meta charset='utf-8'>      <!-->charset  网页编码 gbk gbk2312 utf-8等,现在大多都是utf-8,gbk属于古老的网页了<-->
        <title></title>             <!-->网页标题<-->
    </head>
    <body>                          <!-->网页正文<-->
        This is a simple html page
    </body>
</html>

0x01 HTML标签与文本属性

1、HBuiler工具

hbuilder是DCloud推出的一款支持HTML5的Web开发IDE。快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块等,大幅提升HTML、js、css的开发效率。同时,它还包括最全面的语法库和浏览器兼容性数据。

工具的方便之处-1

当新建一个项目的时候,会自动帮我们整理好文件夹内容,以及一些固定标签。

image-20220115134431018

工具的方便之处-2

保存在img文件夹的照片可以自动帮我们识别出来

image-20220115164517503

2、meta标签

<meta> 元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的关键词、描述、作者信息等,完全可以自定义,如果不写,搜索引擎对你的网页不太友好。所搜引擎所搜出来的结果无非两点最重要:第一是归类,第二是排名。这里的meta标签,起到的就是一个归类作用。

<meta name="keywords" content="网络安全,渗透测试,WEB安全,技术分享">
<meta name="description" content="这是一个专注网络安全的博客。本博客专注于渗透测试技术,分享高质量优质文章">
<meta name="author" content="sukusec">

当然还有其他的属性,不仅仅是name,需要查看HTML手册进行分析,这里不一一列出。

<link>标签定义文档与外部资源的关系。其实就是引用等等

<script>标签:JS脚本

标签:注释,

<p>段落标签:<p>这里来编写一句话</p>

3、标题标签

由大到小

<h1>h1</h1>

<h2>h2</h2>
<h3>h3</h3>
<h4>h4</h4>
<h5>h5</h5>
<h6>6</h6>

</br> 换行标签

<hr>换行线标签

4、文本属性

<strong>加粗</strong>

<b></b>加粗

<i></i>斜体

<u></u> 下划线

<sup></sup>上标

<sub></sub>下标

<del></del> 删除线,特别是在价格打折的时候用到

<font></font>规定字体属性

<font size="13px" color="red">字体大小属性size,color颜色</font>
<font color="red">字体颜色属性color</font>

<pre></pre>代码原样输出,在编辑器里面什么样,在页面就是什么样子。

5、文本域标签

<textarea cols="50" rows="30">这里就是文字内容</textarea>

cols表示左右宽度,rows表示上下宽度

0x02 form表单

HTML 表单用于搜集不同类型的用户输入。

action规定当提交表单时向何处发送表单数据,如果值为空,默认提交到当前网页

method 说明本表单向服务器发送输入信息时的使用方式。提交的方法有 getpostget基本上用于搜索框,post即登录框

  • 使用GET时,HTTP的客户端将表单上用户的输入信息作为字符串附加在ACTION所设定的URL后面
  • ?&隔开,然后把整个字符串传送到服务器端
  • 但由于系统内置变量的长度限制了输入字符串的长度,因此,用GET方式所能传送的数据长度受到限制
  • GET方法不具有保密性,不适合处理要求保密内容,而且不能传送非ASCII码的字符

enctype规定在发送表单数据之前如何对其进行编码。

enctype 属性可能的值
    application/x-www-form-urlencoded   如果不写enctype,默认就是这个,即单纯POST提交数据  
    multipart/form-data 文件上传
    text/plain      很少见,可以当作不存在

1、input标签,是form表单中最重要的元素标签

1-1、input属性

name:同样是表示的该文本输入框名称。

size:输入框的长度大小。

maxlength:输入框中允许输入字符的最大数。

value:输入框中的默认值

readonly/readonly="true":表示该框中只能显示,不能添加修改。

placeholder: 提示信息

1-2、input的类型

type=password 密码输入框

type=file 文件上传

type=hidden 隐藏域

type=button 按钮

type=checkbox 复选框

type=radio 单选框

type=submit 提交按钮

type=reset 重置按钮

<label>标签:表示名称

2、综合练习与分析

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <meta name="keywords" content="网络安全,WEB安全,渗透测试,安全开发,招聘入职">
        <meta name="description" content="XXX招聘网站求职信息填写">
        <title>入职信息</title>
    </head>
    <body>
        <form action="" method="post" enctype="application/x-www-form-urlencoded">
            <label><font color="red"><b>姓&nbsp;名:</b></font></label><input type="text" name="username" value="asdas" readonly="true" size="10" maxlength="20"></br>
            <label><font color="blue">性&nbsp;别:</font></label>男<input type="radio" name="sex" value="1">女<input type="radio" name="sex" value="2"></br>
            <label>密&nbsp;码:</label><input type="password" name="passwd" value="" maxlength="20"></br>
            <label for="email">邮&nbsp;箱:</label><input type="email" name="e" id="email" maxlength="20"></br>
            <!--邮箱的label标签中的for,表示当鼠标点击邮箱二字时,自动将光标移动到后面的input标签的id上,即到输入框中-->
            <label>技&nbsp;能:</label>安全开发<input type="checkbox">渗透测试<input type="checkbox"></br>
            <!--checkbox表示复选框,可以多选,radio表示单选框,只能单选-->
            <!--因为是性别,只能选一个,所以要在radio那个input框中加入name="sex"-->
            <input type="hidden" value="10000000">
            <input type="submit" value="提交">
            <input type="reset" value="重置">
            <input type="button" value="点我试试">
        </form>
        
        <form action="" method="post" enctype="multipart/form-data">    <!--文件上传必须要用到enctype="multipart/form-data"-->
            <input type="file" name="file_upload" value="上传"/>
            <input type="submit"/>
        </form>
    </body>
</html>

image-20220115154107367

0x03 a标签、img标签、table标签

1、a超链接标签

a标签的作用:就是用于控制界面与页面之间的跳转

href属性规定指向链接的URL

1-1、5种跳转方式

target="_self"用于在当前选项卡中跳转,也就是不新建页面跳转,默认就是self

target="_blank"用于在新的选项卡中跳转,也就是新建页面跳转

target="_parent" 在父框架集中打开被链接文档,不常用。

target="_top" 在整个窗口中打开被链接文档,不常用。

target="add" 在链接那里引用nameadd的内容

<a href="http://www.baidu.com" target="_self">百度</a>
<a href="http://www.baidu.com" target="_blank">百度</a>

1-2、a标签锚文本的使用

<a href="#2">锚点</a>
<a name="2">锚点</a>
<p name="">     <!--name值任意,不写也是可以的-->
<a href="#">返回顶部</a>
image-20220115163718174

2、img图像标签

img标签即向网页中嵌入一幅图像。

2-1、属性

src 规定显示图像的url,此url既可以是公网上的图片链接,也可以为本地

width 规定图片的高度,直接输入数字即可,无需px

height 规定图片的宽度,直接输入数字即可,无需px

size图片等比缩放大小,如size="150%"

alt规定图像的替代文本。说白了就是表示展示给访问者的图片名称,当图片加载错误或者某些高级浏览器鼠标放上图片不动时,可以看到名字。如下图

<img src="img/wsukcjlt." alt="美女高清" width="100" height="100"></img>
<img src="https://scpic.chinaz.net/files/pic/pic9/202201/apic37850.jpg" alt="帅哥高清"width="100" height="100"></img>
image-20220115165323076

3、table表格标签

3-1、基本表格制作

<caption>我的标题</caption>表格带标题

<th>表头</th>默认是加粗的

<tr></tr>

<td>表格</td>

border属性表示边框大小

width宽度

height高度

cellpadding 单元边与内容的空白距离

cellspacing 内外边框的空白距离

        <table border="2" weight="10" height="200" cellpadding="5" cellspacing="5">
            <caption>宴桃园三兄弟结义</caption>
            <tr><th>#</th><th>信息</th><th>大名</th><th>地位</th></tr>
            <tr><td>1</td><td>姓名</td><td>刘备</td><td>大哥</td></tr>
            <tr><td>2</td><td>姓名</td><td>张飞</td><td>二弟</td></tr>
            <tr><td>3</td><td>姓名</td><td>刘备</td><td>三弟</td></tr>
        </table>
image-20220115172110198

3-2、合并单元格(了解即可)

用到的时候查一下

colspan

rowspan

image-20220115172914813

0x04 列表标签、无序列表、有序列表

1、功能的位置

image-20220115173137333

2、列表标签

2-1、无序列表

所谓无序列表,就是无序号数字的列表,可以看到下图每行都有一个标识小黑圈。这是ul标签的type属性来控制的项目符号。

<ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
image-20220115173657498
type的四种基本项目符号:
    circle  空心圆
    disc    实心圆(默认类型)
    square  实心方形
    none    去除标识

2-2、有序列表

所谓有序列表,就是有数字123来标识行号的列表。

<ol>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ol>

有序列表的type的类型

默认 阿拉伯数字
小写字母列表 
大写字母列表 A
罗马字母列表  I
小写罗马字母列表 i
none 去除
image-20220115174711378

0x05 frameset frame框架的使用

frameset定义一个框架集,即在一个页面中设置、组织一个或多个窗口框架 不能嵌套在body标签里。必须使用colsrows 属性才能出效果。说白了frameset的作用就是将不同网页分屏显示罢了。一般是在做==点击劫持漏洞==的时候用到的。

frameset 不能在body内使用

frame一般都是在frameset中使用

cols定义框架集中列的数目和尺寸

rows 定义框架集中行的数目和尺寸

scrolling 滚动条

auto 在需要的情况下出现滚动条(默认值)

yes 始终显示滚动条(即使不需要)

no 从不显示滚动条(即使需要)

* 表示剩下所有的空间

这里有一个错误示范,<frameset>前面多了一个",就会导致页面无法加载,可要细心啊!!

image-20220115205038938

更改了代码后,发现这样子的界面就算成功了。不过可能有些网站不允许嵌入frame,例如现在的百度,cnblog等。

    <frameset rows="50%,50%">                                   <!--rows表示横着分屏,frameset不能写在body里面-->
        <frame src="https://www.sogou.com"/ scrolling="yes">    <!--滚动条默认就是打开的-->
        <frame src="https://www.bilibili.com/"/>
    </frameset>
    <body>
    </body>
image-20220115210807591

竖着分屏,sogou占20%,剩下的都给B站。

<frameset cols="20%,*">
        <frame src="https://www.sogou.com"/>
        <frame src="https://www.bilibili.com/"/>
    </frameset>
image-20220115211841026

frameset框架利用

1、一般的后天架构都是如此的分步,其实就是利用了frameset框架技术。

image-20220115214442318

就比如说我在博客园创建的博客后台,就是个典型例子。

left表示左边的列表,main表示主要操作信息;top即上方固定部分;footer为下方的固定部分。

image-20220115215018716

2、具体操作:新建一个web项目,里面新建5个文件,分别是,index.htmlmain.htmltop.htmlleft.htmlfooter.html,在body标签中写上对应的内容用于标识。

image-20220115215400955

3、先写一个上下,一般来说顶部是30%,不过看自己的需求吧。

image-20220115220630827

4、再将main左右分屏,其实也就是将<frame src="main.html">替换成这几行内容:

<frameset cols="20%,*">
    <frame src="left.html">
    <frame src="main.html">
</frameset>
image-20220115220824537

5、之后来填写内容,left一般都是列表内容,所以我们在left.html里面添加一些无序列表。

<body>
    <ul>
        <li><a href="#">12345</a></li>
        <li><a href="#">上山打老虎</a></li>
        <li><a href="#">老虎没打着</a></li>
        <li><a href="#">打到小松鼠</a></li>
        <li><a href="#">大飞天龙</a></li>
        <li><a href="#">淦!</a></li>
    </ul>
</body>

6、之后我们想要做的效果是,点击12345,就会在main的部分出现内容。什么内容呢?新建一个add.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <form method="post" action="" >
        标题:<input type="text"></br>
        内容:<textarea cols="40" rows="20"></textarea><br/>
        <input type="submit" name="submit" value="点击提交"><br/>
        </form>
    </body>
</html>

image-20220115222747704

7、首先要将left.html这个链接对应起来,然后后面紧接着一个target="add"

image-20220115222953097

再到index.html中,main.htmlframe添加一个name="add",这样当我们点击12345时,就会将add.html的内容,替换掉main.html的内容了。

image-20220115223103635

效果如下,其他的同理,frameset配合a标签

image-20220115223510121
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容