本文关于为什么网络攻防要学数据库啊,有什么关系吗?,据
亚洲金融智库2022-04-19日讯:
网络攻防,一个是攻,一个是防
为什么在网络攻防里数据库重要?为什么我们要学数据库?
下面我从攻击方角度和防守方角度分别来诠释学习数据库的重要性
首先我们看看,
数据库是什么?
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。数据库是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合,可视为的文件柜存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。简单点说就是网站、应用系统等存储各类信息的一个“仓库”,作为管理者你可以对这些信息进行管理,包括增删改查等,
举个最简单的例子,你微信的账号和密码就是存储在微信系统的数据库中的,你登录时输入的值就会和数据库里对应的值就行比对,
如果一致那么密码正确允许登录,
你修改密码就相当于修改了数据库某一项的值,
你就相当于普通用户,而数据库管理员则拥有更高的权限,不同的管理员也有不同的权限,但一般来说是可以对所有普通用户进行管理操作了。
那为什么数据库如此重要?
上面我也说了,一般情况下,一个管理员是可以管理所有普通用户数据的,
假如你获得了微信系统的一个管理员权限,那么你几乎可以查询这个数据库里所有普通用户,也就是查看所有人的微信信息,包括账号、密码、身份信息、联系信息、好友列表、支付密码等,
而且这些数据库管理员是可以执行操作系统指令的,
所以,如果拿到数据库管理员权限,那我就相当于获得了所有数据,然后再通过数据库执行操作系统指令,进一步控制电脑服务器,这就是数据库为什么如此重要的原因了!
实际上如果是真正做黑产的人,不考虑内网扩散其他服务器的情况下,获得数据库里面的敏感数据得到的收益是远远大于获取一个肉鸡的收益的。(肉鸡:留下后门可随时控制的电脑)
从攻击角度来说
首先,我们来想一下,黑客攻击的目的是什么?
不就是控制目标服务器或者拿取数据吗?
如果最基本的数据库原理都不会,指令都不会,就算给你数据库接口你如何获取数据?
而实际攻击过程中,由于网站应用系统的不同,以及数据库的不同,各自可能存在的漏洞不同,我们会存在各式各类的复杂情况,所以实际上我们需要学习的更多
攻击数据库以大家最常听见的SQL注入来说,你需要学习
SQL注入原理、联合注入、注入类型、别名提升权限、读取文件、html锚点、Mysql布尔注入、延时注入、别名讲解、MYSQL-BUG注入、MYSQL函数报错、修复SQL注入、判断网站是否存在注入、宽字节注入、多语句注入、Values注入、Delete注入、UPdate型注入、注入常用函数、防火墙、其它数据库注入等等!以上只是部分注入技能,你学会了过后不代表你就能利用漏洞获取数据了,就像你只是刚刚学会了走路而已了,
实际注入过程中还会遇到防护措施阻拦,包括数据库、网站系统本身的防护、关键字过滤等,以及web防火墙等,你还要学习如何绕过它们,才有可能真正获取到数据!
也就是说你不仅要学会走路,还得学会跑,还得会跨栏,你才可能真正到达终点!
当然还有其他攻击方式最终也能获取到数据,这里就不扩展探讨了,感兴趣的可以关注我,不定期分享一些网络攻防的技术。
从防守角度来说
作为防守者,尤其是你想要做一个优秀的防守者,保护你的数据不被黑客拿到,那么同样的,你也需要了解刚才所说的一些数据库的攻击方式,数据库原理等等,而且你还要学习更多防绕过方式!
因为你只有明确知道了如何攻击,你才真正知道如何防御!
就像我们房子防御小偷一样,小偷只需要一个窗户就能进来,而我们为了不让小偷进来,我们会看好门,看好窗等所有小偷有可能进来的地方!
专题推荐:
关系(131)数据库(2)攻防(16)