基础概念:
HTML:超文本标记语言
HTTP:超文本传输协议
端口号:范围:0-65535(2^16)
http:80
https:443
tomcat:8080
mysql:3306
ssh:22
url:协议+ip地址+端口号+资源路径+查询参数
三次握手、四次分手:
三次握手:
c---------------------------------------------------->s
SYN=1,ACK=0,seq=x
c<----------------------------------------------------s
ACK=1,ack=x+1,seq=y
c---------------------------------------------------->s
ACK=1,ack=y+1
四次分手:
c---------------------------------------------------->s
FIN=1,ACK=1,seq=x
c<----------------------------------------------------s
ACK=1,ack=x+1,seq=y
c<----------------------------------------------------s
ACK=1,seq=u,ack=x+1
c---------------------------------------------------->s
ACK=1,seq=x+1,ack=u+1
osi七层架构:
物理层
数据链路层
网络层
传输层
会话层
表示层
应用层
测试流程:
需求分析-测试计划-测试方案-搭建环境-编写测试用例-评审-执行用例-测试报告
包括:功能、性能、兼容、安全、易用、可移植、可靠、可修复
安全:
越权,跨站攻击,sql注入。(可以使用工具扫描,结果提交给开发)
越权:session欺骗:
1、清除缓存信息
2、使用admin账号登录shopxo,点击个人中心-我的积分
3、使用fiddler查看该页面的请求信息
4、对该请求右击,重新执行-补发并编辑
5、将补发并编辑的请求拖到组合器查看请求头中的sessionid
6、修改sessionid的值,并点击执行查看执行之后生成的请求
7、退出当前账号,并清理当前admin账号的cookie和session的值
8、使用admin1账号重新登录并使用fiddler抓我的积分页面请求,获取sessionid
9、将sessionid的值写到第六步admin账号的请求中,并执行
10、查看执行后的结果
跨站攻击:<script>alert('aaa')</script>
sql注入:
前提:参数可控,满足sql语句语法
步骤:
1、通过order by确定出表中有几个字段
2、通过union取并集,将前半段失效
3、通过database(),user(),version()查询出数据库名,连接数据库的用户,
服务器版本
4、攻击出表:group_concat(table_name) from information_schema.tables where table table_schema = 16进制数据库名
5、攻击出表中字段:group_concat(column_name) from information_schema.columns where table_name = 16进制表名