应届生的面试题

网络协议

TCP和UDP有什么区别?

TCP是面向连接的,UDP无连接、不可靠

举例一些常见的协议以及对应的端口

tcp/ip协议有哪4层?

tcp/ip协议包括网络接口层、网络层(ARP、ICMP)、传输层(tcp、udp)、应用层

cookie和session的区别?

1
2
3
4
5
6
7
8
9
10
它们都是web服务器用来区别不同客户的。
cookie是一串小文本字符串存储在客户端,而session的形式和大小没有要求,存储在服务器端。

cookie的过期时间取决于程序的设计。
session依赖于名为JSESSIONID的cookie,而cookie JSESSIONID的过期时间默认为-1,只需关闭窗口该session就会失效,因而session不能达到长期有效的效果。

两种session的方式:
1、存储在服务端:通过cookie存储一个session_id,然后具体的数据则是保存在session中。如果用户已经登录,则服务器会在cookie中保存一个session_id,下次再次请求的时候,会把该session_id携带上来,服务器根据session_id在session库中获取用户的session数据。就能知道该用户到底是谁,以及之前保存的一些状态信息。这种专业术语叫做server side session

2、将session数据加密,然后存储在cookie中。这种专业术语叫做client side session。flask采用的就是这种方式,但是也可以替换成其他形式。

工具类

1
2
3
4
5
1. nmap扫描参数
2. burp爆破弱口令修改线程
3. metasploit
4. cobalt strike
5. sqlmap各种扫描方式使用的参数

xss与sql注入

xss有哪些类型

反射型、存储型、DOM类型

DOM类型XSS和其他类型的区别?

DOM类型是文档对象模型的意思,当用户输入参数可以修改文档对象模型,插入js代码,就可以叫做DOM XSS。

与其他XSS的区别是,DOM XSS并不需要服务器解析响应的直接参与,触发XSS靠的是浏览器端的DOM解析。

请简述下XSS和CSRF的区别?

XSS是跨站脚本伪造的意思,分为反射型xss,存储型xss,以及DOM类型。
当页面没有过滤用户输入的参数,就可以插入js脚本。如果是用户输入,页面马上输出的就叫做反射型xss。
如果用户输入保存到了数据库中,每个访问网页的用户都能访问,就是存储型xss。

csrf是客户端请求伪造的意思,攻击者需要伪造一个用户的身份来达到目的,例如利用管理员权限来新建用户之类。csrf需要登陆后操作,xss不需要。csrf的重点在于伪造用户的身份,而xss重点在于在web应用插入脚本语言。

xss的防御方式?

过滤标签