day1-web安全基础(米斯特web渗透测试)

发布于:2024-06-28 ⋅ 阅读:(16) ⋅ 点赞:(0)

一、搭建网站

静态层(html,js,css)(静态网页是静态层的一些东西)
动态层(php,jsp,脚本语言框架)(动态网页包括动态层的东西,数据库等,因你输入而改变是动态层)
服务层(web容器Apache,Nginx)
系统层(Mac,windows,Linux)

利用PHPstudy搭建一个网站,有很多集成环境
Apache(web容器)
PHP网站脚本编程语言(解释性语言:通过解释器就能直接运行此代码,而不需再生成另一个文件)
Mysql(用户的信息存在此处)

网站搭建好后

二、专业术语

1.域名

本地网站内网可访问,其他网络不可访问
域名可以解析到IP上,访问域名就是访问IP

2.木马

(1)软件木马:

远程控制软件的一个恶意化的软件(如timevaver有主控端和被控端,若朋友想控制你电脑,需要有你的ID和远程控制密码才行(前提是两个人都有timevaver这个程序))
软件木马也是这个道理,但是其变成一个很流氓的,无需告诉ID和密码,只要安装了这个客户端,其主控端就能控制这个被控端,只要安装了这个软件木马就会被控制。

(2)脚本木马:

脚本语言写的一个木马,可以通过这个脚本木马控制这个网站。

3.社工

凯文米特,社会工程学之父,利用心理缺陷(七宗罪)达到自己的目的。随着网络发展,也演变为了人肉,在网络人肉某个人,靠的是网络留下的痕迹,如在网上留下个手机号会被人找到。

4.IP

5.后门

之前讲到软件木马就是一个后门,不知不觉被别人安装了这个软件木马,人家可以通过此软件木马进入电脑。
后门的作用:
比如说你去入侵了别人的一个服务器,因为想持续性获得这个网站的管理权限,但是又怕自己一退出,别人又会将你的管理权限的账户删掉,这时可以留个后门,以后通过此后门再来控制这个服务器。(当然在未授权的时候请不要做这种事,因为这是违法的)

6.Poc(验证),exp(利用)

猜想验证,利用,可能经常看到某些从编写poc到什么什么,你会编写某某漏洞poc吗,你会编写某某漏洞exp吗。有人问你有这个漏洞的poc吗(你有验证这个漏洞的工具吗,你有验证这个漏洞的代码吗)
或者有人问你有这个漏洞的exp吗(你有利用这个漏洞的工具吗,你有利用这个漏洞的代码吗)
可能是一个可视化的工具,或者就是一串url的资源(代码一样的东西)

三、HTTP协议

1.什么是HTTP协议?其作用(超文本传输协议,访问网站)
2.读《图解HTTP》,了解HTTP协议
3.你访问的url是什么东西

注意域名不是网址
域名:www.baidu.com
网址:http://www.baidu.com/1.php?id=1
【协议】://host:port/

首页:index.xxx

使用火狐浏览器捕获http,在火狐浏览器上安装live http header插件来捕获

四、渗透测试步骤

1.获得授权

渗透测试即将开始的时候我们需要获得测试目标提供的授权,否则无法进行下去(记住口头授权不一定安全,一般是纸质版的授权最好)

2.信息收集

知己知彼,方能百战百胜。进行渗透测试的时候首先需要针对网站及个人进行信息收集

3.挖掘利用

这是渗透的主要环节,挖掘并且利用漏洞

4.整理报告

做完渗透测试、我们要根据情况整理报告(给目标厂商的技术看的,然后其修复漏洞)

五、编码(是我们web安全最常见的东西)

使用hackbar插件可以进行以下的编码(在查看元素中可以看到此软件)

1.URL编码

Url编码是一种浏览器用来打包表单输入的一种格式
编码格式为:%号 + 十六进制

2.Base64编码

Base64是网络上常见的用于传输8bit字节代码的编码方式之一
编码格式为:大小写字母数字/大小写字母数字+ =号

3.HTML编码

在HTML中不能使用小于号(<)和大于号(>),这是因为浏览器会误认为它们是标签。所以使用实体化编码。
编码格式为:&开头/&#开头,;结尾

六、加密(MD5加密)

Message digest algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提高消息的完整性保护。目前不可逆解。(其实是哈希,不能通过算法去解它,但是有解密方法,不叫逆向解密,叫碰撞解密)

1.压缩性:

任意长度的数据,算出的MD5值长度都是固定的

2.容易计算:

从原数据计算出MD5值很容易(如一个软件MD5是此,但算出来的MD5值不是这个,那么此软件被修改过了)

3.抗修改性:

对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。

4.强抗碰撞:

已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

MD5默认长度为:16位和32位
MD5只可以包含abcdef这几个字母和数字0-9

MD5(mstsec,16) = d5fb786963797bc3

MD5撞密思路
字典撞密,存储撞密

七、DOS命令初识

DOS命令(磁盘操作系统)命令,是DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其他命令
Cmd只是调出DOS的命令,有些问题用DOS解决还是非常好的

常用DOS命令

1.通配符

通配符是一类键盘字符。当查找文件夹时;不知道真正字符或者不想键入完整名字时,常常使用一个通配符代替一个或多个真正字符。
通配符常见的就两个,如果了解正则表达式可能有其他通配符

星号(*)
可以使用星号代替0个或多个字符。如果正在查找以AEW开头的文件,但不记得文件名其余部分,可以输入AEW*,查找以AEW开头的所有文件类型的文件,如AEWT.txt.
AEWU.EXE、AEWI.dll等。要缩小范围可以输入AEW*.txt,查找以AEW开头的所有文件类型并以.txt为扩展名的文件如AEWIP.txt、AEWDF.txt。
问号(?)
可以使用问号代替一个字符。如果输入love?,直接以找love开头的一个字符结尾文件类型的文件,如lovey、lovei等。要缩小范围可以输入love?.doc,查找以love开头的一个字符结尾文件类型并.doc为扩展名的文件如lovey.doc、loveh.doc。

2.查看命令

(1)cd进入某个路径
(2)Dir显示目录下的目录和文件
(3)More查看文件内容
(4)Type查看文件内容

3.操作命令

(1)md创建文件夹
(2)Rd删除空文件夹
(3)Copy复制
(4)Del删除
(5)Ren重命名文件

八、信息收集

1.网站信息刺探

(1)站点链接(有人知道此链接可以找到漏洞,有的不知道链接就找不到漏洞,在尽可能的提高你能挖掘的范围)

方法:
暴力破解、搜索引擎、站内爬虫
暴力破解(后期讲用什么暴力破解)
工具:
1.weekfile(猪猪侠自己开发的一款工具,暴力破解枚举网站敏感东西文件、压缩包等)
2.御剑,在后期也会使用现在不用,只是了解
3.搜索引擎(在后期会讲搜索引擎语法)
搜索引擎高级语法(圈内称其为谷歌hack语法)
Intitle
Intext
Inurl
现在讲一个搜索资源的方法在搜索框中输入(site:soubaidupan.com intitle:特种兵)
站内爬虫(深度爬虫,将一个个站内的链接提取)

(2)whois&备案

whois可以了解这个站长的信息,邮箱联系人等
备案扩大目标范围

(3)旁站C段&子域名

(旁站:一个IP上有其他网站,C段:有四个段,第四个是C段1.1.1.0-255)
做渗透测试比较累,前期的信息收集要做到一个精致的地步
大数据平台(FOFA PRO,钟馗之眼,shodan,傻蛋联网设备搜索系统,censys,谛听)
Bing接口查询(在线C段查询http://phpinfo.me/bing.php)
子域名(layer子域名挖掘机4.2纪念版但容易崩溃)

(4)网站服务信息

我们使用的liveHTTP header获取网站的响应报文:
得到信息如下:
Web容器为IIS版本7.5
网站开发语言为 :ASP.NET

(5)网站服务器信息(分为两种一种物理服务器,一种远程服务器云服务器)

Ping:dos命令获取服务器
多地ping:在线多地ping确认真实IP
IP反查:进一步确认真实IP以及所对应的网站

2.服务器信息刺探

(1)Nmap初识(http://nmap.org/)

nmap是一款开源免费的网络发现(network discover)和安全审计(security auditing)工具

-sT	TCP connect()扫描,这是最基本的TCP扫描方式。这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。(不推荐使用容易被发现,但有授权被发现了也没事)
-sS	TCP同步扫描(TCP SYN),因为不必全部打开一个TCP连接,所以这项技术通常称为半开扫描(half-open)。这项技术最大的好处是,很少有系统能够把这记入系统日志。不过,你需要root权限来定制SYN数据包。
-sF,-sX,-sN	秘密FIN数据包扫描、圣诞树(Xmas Tree)、空(Null)扫描模式。这些扫描方式的理论依据是:关闭的端口需要对你的探测包回应RST包,而打开的端口必需忽略有问题的包(参考RFC 793第64页)。
-sP	ping扫描,用ping方式检查网络上哪些主机正在运行。当主机阻塞ICMP echo请求包是ping扫描是无效的。nmap在任何情况下都会进行ping扫描,只有目标主机处于运行状态,才会进行后续的扫描。
-sU	如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务,可以使用此选项。
-sA	ACK扫描,这项高级的扫描方法通常可以用来穿过防火墙。
-sW	滑动窗口扫描,非常类似于ACK的扫描。
-sR	RPC扫描,和其它不同的端口扫描方法结合使用。
-sV	扫描服务端口、名称和版本                    
-O	远程检测操作系统类型以及版本(指纹信息)

(2)扫描C段:

nmap -sP www.baidu.com/24 -oN ip.txt

扫描百度服务器C段,并且生成报告txt。

(3)扫描指定端口:

nmap -p 80 198.169.1.2

要全面检测端口,需要加入:-p 1-65535

(4)Nmap脚本引擎

脚本扫描部分可以详细参考:nmap脚本使用总结

用法:
--script=脚本名称
如:nmap -p80 www.baidu.com --script=http-enum.nse上面的脚本为枚举目录,所以要指定http端口
(4-1)扫描sql注射
nmap -p80 www.baidu.com --script=sql.injection.nse
(4-2)使用所有脚本扫描
nmap --script all www.baidu.com 
(4-3)使用通配符扫描
nmap --script “http-*” www.baidu.com 必须使用 “”
(4-4)smb系列
--script=”smb*” www.baidu.com

3.个人信息刺探

在如今这个时代只要你上网就一定会泄露信息
在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到