python web基础
鸭子类型与多态鸭子模型多态概念适用于JAVA与C#这一类强类型语言中,而python崇尚鸭子模型。
动态语言调用实例时不检查类型,只要方法存在,参数正确,就可以调用,这就是”鸭子类型”,它并不要求严格的继承体系,一个对象只要”看起来想鸭子,走起路来像鸭子”,就可以看作鸭子。
多态定义时的类型和运行时的类型不一样,就称为多态。
抽象基类(abc模块)抽象基类介绍抽象基类:是类里定义纯虚成员函数的类,纯虚函数只提供接口,并没有具体实现,抽象基类不能被实例化(不能创建对象),通常作为基类提供类继承,子类重写虚函数,实现具体的接口
抽象基类就是定义各种方式而不做具体实现的类,任何继承自抽象基类的类必须实现这些方法,否则无法实例化
kali的安装及配置
安装kali先打开官网https://www.kali.org/,找到虚拟机那一项,下载vmware版本,推荐第一个
下载,由于是国外网站,就需要各显神通了…………
解压并放到合适的文件夹
打开虚拟机,选择文件—打开
然后选择刚才下载的kali文件,此时便成功打开。
一开始默认是NAT网络,此时要设置成桥接模式,因为以后的攻击可能需要在与主机同一网段上才能进行。
配网
nmap的使用
一、介绍Nmap(Network Mapper)是一款用于网络发现和安全审计的开源工具。它最初由 Gordon Lyon开发,是一款功能强大且广泛使用的网络扫描工具。Nmap 允许用户在网络上执行主机发现、端口扫描、服务识别和版本检测等操作,以帮助评估网络的安全性、发现主机和服务、以及识别潜在的安全威胁。
二、原理
发送探测包: Nmap向目标主机发送各种类型的探测包,如TCP SYN、TCP ACK、ICMP echo request等。
分析返回包: 根据返回包的内容,Nmap可以判断目标主机的状态、开放端口、运行的服务等信息。
匹配指纹库: Nmap将获取到的信息与内置的指纹库进行匹配,从而识别目标主机的操作系统和服务版本。
生成扫描报告: Nmap将扫描结果以文本、XML等格式输出,方便用户分析。
三、扫描模式
TCP ACK扫描原理TCP ACK扫描 是一种网络扫描技术,主要用于探测目标主机上的防火墙规则。它的工作原理是:向目标主机的某个端口发送一个TCP数据包,该数据包只设置ACK标志位,不进行完整的TCP三次握手。为什么发送ACK包?
绕过防火墙: 许多防火墙会对正常的 ...
selenium的安装与配置
一、安装selenium
xpath语法
简介xpaths是一门专门在XML和HTML文档中寻找的语言,可用来在xml和html文档中对元素和html文档中对元素和属性进行遍历。
语法选取节点使用路径表达式来选取XML文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似
表达式
描述
实例
结果
nodename
选取此节点的所有子节点
bookstore
选择bookstore下所有的节点
/
如果是在最前面,代表从根节点选取。否则选择某一节点下的某个节点
/bookstore
选择根元素下所有的bookstore节点
//
从全局节点中选择节点,随便在哪个位置
//book
从全局节点中找到所有的book节点
@
选择某个节点的选择
//book[@price]
选择所有book节点的price属性
谓语:
谓语来查找某个特定的节点,
excel常用函数
一、查找函数1.vlookup1vlookup(lookup_value,table_array,col_index,[range_lookup])
lookup_value:查找的值
table_array:在哪张表进行查找
col_index:在选择的表中的列
2.hlookup1hlookup(lookup_value,table_array,col_index,[range_lookup])
lookup_value:查找的值
table_array:在哪张表进行查找
col_index:在选择的表中的列
二、随机函数1.rand返回一个大于等于 0 及小于 1 随机数
2.randbetween返回指定的最小值和最大值之间的一个随机整数
三、求和函数1.SUM单个数值、单元格或区域相加计算
1SUM()
2.SUMIF一定区域符合条件的值 进行相加计算
1SUMIF(条件区域,求和条件,求和区域)
3.SUMIFS一定区域符合多个条件的值 进行相加计算
1SUMIFS(求和区域,条件区域1,条件1,条件区域2,条件2,…)
四、平均函数1.AVERAGE将 值、单 ...
js基础
一、嵌入方式1.内嵌式理论上js可以插入任何一个地方,但是习惯上写在head标签或body下
123<script> alert('x')</script>
<script>标签如需在 HTML 页面中插入 JavaScript,请使用 <script> 标签。
<script>和 </script>会告诉 JavaScript 在何处开始和结束。<script>和 </script> 之间的代码行包含了 JavaScript:
您无需理解上面的代码。只需明白,浏览器会解释并执行位于 <script>和 </script>之间的 JavaScript 代码
那些老旧的实例可能会在 <script>标签中使用 type=”text/javascript”。现在已经不必这样做了。JavaScript 是所有现代浏览器以及 HTML5 中的默认脚本语言。
2.外联式1<script type="text/javas ...
xss-labs-master实战
level 1
看到参数为name,构造payload:
1http://xss-labs-master/level1.php?name=<script>alert('1')</script>
通过
level 2
先提交一个测试代码查看,构造payload:
1<script>alert('1')</script>
查看源代码
发现下面value没有过滤
构造payload,闭合前后
1">"<script>alert('1')</script><"
xss漏洞基础
一、测试语句在网站是否存在xss漏洞时,应该输入如<,>输入后查看网页源代码是否过滤标签,如果没有,很大可能存在xss漏洞
常用的测试语句12345<h1>1</h1><span>1</span><script>console.log(1)</script>"><span>x</span><"">"><span>x</span><"<"
二、攻击语句输入测试语句未过滤后,为显示存在漏洞,需要插入攻击代码
常见语句
123<script>alert(1)</script><svg onload=alert(1)><a href="javascript:alert(1)">aa</a>
三、利用
抓包
一、概念抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。
二、原理数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。帧通过特定的称为网络驱动程序的软件进行成型,然后通过网卡发送到网线上,通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。就是在这个传输和接收的过程中,嗅探器会带来安全方面的问题。
每一个在局域网(LAN)上的工作站都有其硬件地址,这些地址唯一地表示了网络上的机器(这一点与Internet地址系统比较相似)。当用户发送一个数据包时,如果为广播包,则可达到局域网中的所有机器,如果为单播包,则只能到达处于同一碰撞域中的机器。
在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的数据包则不予响应(换句话说,工作站A不会捕获属于工作站B的数据,而是简单地忽略这些数据)。如果某个工作站的网络接口处于混杂模式,那么它就可以捕获网络 ...







