前一段时间的***学习总结(一)

   第一天,我对网站的脚本类型,数据库的类型,服务器的种类,操作系统有了一个初步的了解。

   现在的网站脚本大致有asp、php、aspx这三种类型这些都是动态语言,它们是中小型网站中应用最多的三种脚本类型,这三种类型的漏洞是比较多的。还有一种类型是jsp脚本,这种脚本多用于大型网站的开发,jsp脚本类型的网站漏洞,可以说几乎是没有的,不过虽然jsp的漏洞少,但jsp网站由于开发难度大,维护成本高,往往需要购买独立的服务器,所以jsp类型的网站还是很少的,而且这也不是我们主攻的方向。

  数据库大体上分为关系型数据库和非关系型数据库。关系型数据库就是我们常见的网站所使用的数据库,大致有mysql、mssql、access、oracle,db2、postsql等,非关系型数据库是用于大数据云计算的,我们在这里不予讨论。

  网站的服务器有软件包、集成包,iis,apache,tomcat、uginx等。(其实我到现在还没明白软件包和集成包到底是什么东西)

  操作系统类型基本就是就是常见的windows,linux这两种。

  asp、php、aspx这些之所以被称为动态语言,简单来说就是因为这些动态语言的代码在我们的客户端是看不到的,它们会转化成静态语言显现出来,而静态语言就是代码不会被转换,服务端和客户端的代码是一致的。

  如果是asp的脚本语言,那它往往搭配的是access或mssql的数据库,php经常与mysql搭配,aspx和jsp常常与mssql或oracle搭配。

  iis6.0以win2003为操作系统,iis7.0和7.5以win2008为操作系统,apache则windows,linux都可以。

  我们在查操作系统的时候,可以通过工具或网站组合来查,也可以通过ttl值来查询,和谁的ttl值最相近可能就是什么样的操作系统。

  接下来我又学习了sql注入的一些内容,sql注入产生的原因就是因为,网站在接受用户输入的相关参数时未经过滤就直接带入数据库查询,从而导致一些敏感信息的泄露。而用户输入的参数就是sql语句,因为只有sql语句才会在数据库中被执行。

  可能存在注入的网站的类型有www.xxx.com/index.asp?id=, url中的asp可以是php或者是aspx,id也可以换成其他的如page等等,还有像这样的www.xxx.com/index.asp?id=1&page=111 网站也有可能存在注入,要特别注意的是在进行判断和注入的时候,要将id移到后面page移到前面再进行注入。还有一种伪静态网如 www.xxx.com/index/new/id/5

看似是静态页面其实是动态的在注入的时候照常进行就可以。

  sapl手工注入的第一步就是要判断是否存在注入,常用的方法是在url后加 and 1=1 和 and 1=2,如果加and 1=1是返回正确的页面,加and 1=2后返回的页面和之前不同,那就是存在注入,其中的2可以换成任何值只要不是1就可以,原理是什么就不用我在多说了吧,打这么多字真的很累。

  判断存在注入后,我们就要通过orde by num 来看看他的数据库中有多少个表order by 后面要跟一个数字,这个数字就是表的数目,判断表的数目如果那个数是10的时候返回正确页面,11的时候返回错误页面,那么他的数据库的表的个数就是10个。

   猜解出表的个数之后,接下来就要猜解他的表名,所用到的语句是union select 1、2、3、4、5、6、7、8、9、10 这时在错误的页面中会显示1到10中的若干个数字,然后将显示出的数字在url中用database(),user(),version(),@@version_compile_os他们会相应的在页面中显示数据库名,数据库用户,数据库版本,和操作系统。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章