网络安全简介

说说什么是SQL注入?如何防止SQL注入?

1
2
3
4
就是通过把`SQL`命令插入到`Web`表单递交或输入域名或页面请求的查询字符串,
最终达到欺骗服务器执行恶意的SQL命令。
因此永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取。
所谓的参数化查询(Parameterized Query 或 Parameterized Statement)是指在设计与数据库链接并访问数据时,在需要填入数值或数据的地方,使用参数 (Parameter) 来给值。

说说XSS的原理及防范?

1
2
3
攻击指的是攻击者往Web页面里插入恶意`html`标签或者javascript代码。
因此代码里用户输入的地方和变量都需要仔细检查长度和对"<"、"">"、";"、"’"等字符做过滤;
其次任何内容写到页面之前都必须加以`encode`,避免不小心把`html tag 弄出来。这一个层面做好,至少可以堵住超过一半的XSS攻击。

跨站请求伪造 csrf

1
2
3
4
5
6
7
8
9
10
11
12
攻击者盗用了你的身份,以你的名义发送恶意请求。
要完成一次CSRF攻击,受害者必须依次完成两个步骤:
a、登录受信任网站A,并在本地生成Cookie。
b、在不登出A的情况下,访问危险网站B。

网站A :为恶意网站。
网站B :用户已登录的网站。
当用户访问 A站 时,A站 私自访问 B站 的操作链接,模拟用户操作。
设B站有一个删除评论的链接:http://b.com/comment/?type=delete&id=81723
A站 直接访问该链接,就能删除用户在 B站 的评论。

解决办法: 使用验证码验证身份
文章作者: woyao
文章链接: https://chenwoyao.github.io/2021/04/23/计算机网络/网络安全简介/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 woyao的博客