Web安全-伪静态网页

初步认识

“伪静态”顾名思义就是一种表面上看似是静态网页(以.html.htm等结尾),不存在任何的数据交互,却其实是动态网页,存在数据交互的网站,具有这种特性的网页被称为“伪静态网页”。我们看到的伪静态网页其实是经过处理的,将动态网页的id等参数通过URL重写来隐藏,让查看者以为是静态网页。

在平时的测试过程中我们经常会看到这样一类奇特的地址:http://xxx.xxx.xx.xx:xxx/test.php/id/1.html (原型一般为:http://xxx.xxx.xx.xx:xxx/test.php?id=1 )。像这种类型的网址URL,往往是一种伪静态网页,遇到这种情况可以直接对".html"之前的参数加“'”进行判断是否存在注入!

实际案例

大家都熟悉动态网站的SQL注入了,网上有很多资源。下面看看一次伪静态网页的注入点查找——手工注入判断(和动态注入判断方法一样):

1、正常页面显示,如图:
在这里插入图片描述2、在网址加上" ' ",网页不正常显示,如下图:
在这里插入图片描述3、在网址加上" and 1=1 “,网页正常显示,如图:
在这里插入图片描述4、在网址加上” and 1=2 ",网页不正常显示,如图:
在这里插入图片描述由此可知该网页为伪静态网页,存在SQL注入。

辨别方法

如果看到一个以.html或者.htm结尾的网页,此时可以通过呢在在地址输入框中输入:javascript:alert(document.lastModified),来得到网页最后的修改时间,如果得到的时间和现在时间一致,此页面就是伪静态,反之是真静态;因为动态页面的最后修改时间总是当前时间,而静态页面的最后修改时间则是它生成的时间。
在这里插入图片描述

实际意义

什么时候网站需要采用伪静态功能呢?

  1. 考虑SEO搜索引擎优化:利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名。目的是让其在行业内占据领先地位,获得品牌收益),将动态网页通过服务器处理成静态页面,如www.xxx.com/jk/fd.php?=12这样的动态网页处理成www.xxx.com/jk-fd-12.html这样格式静态页面,常见的论坛帖子页面,都是经过伪静态处理成静态页面格式html页面。
  2. 考虑网站所用的程序语言不易被发现,经过重写来伪静态来将动态网页的程序后缀变为html的静态页面格式。

伪静态的利与弊

当然犹如一篇文章的作者所说的:"如果流量稍大一些使用伪静态就出现CPU使用超负荷,我的同时在线300多人就挂了,而不使用伪静态的时候同时在线超500人都不挂,我的IIS数是1000。”

确实是这样的,由于伪静态是用正则判断而不是真实地址,分辨到底显示哪个页面的责任也由直接指定转由CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病。

我们应该选择伪静态还是真静态?

1、使用真静态和假静态对SEO来说没有什么区别;
2、使用真静态可能将导致硬盘损坏并将影响论坛性能;
3、使用伪静态将占用一定量的CPU占有率,大量使用将导致CPU超负荷;
4、最重要的一点,我们要静态是为了SEO。

扫描二维码关注公众号,回复: 9142304 查看本文章

所以:

1、使用真静态的方法可以直接排除了,因为无论怎么生成,对硬盘来说都是很伤的。
2、既然真伪静态的效果一样,我们就可以选择伪静态了。
3、但是伪静态大量使用会造成CPU超负荷。
4、所以我们只要不大量使用就可以了。
5、既然静态只是给SEO看的,我们只需要伪静态给SEO就行了,不需要给用户使用。
6、所以我们只要在专门提供给SEO爬的Archiver中使用伪静态就可以了。

发布了122 篇原创文章 · 获赞 90 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/weixin_39190897/article/details/104150886