|
B: w% u2 L1 A. p: H6 O 互联网的出现给我们带来了新的生活方式,我们可以在网上做以前想象不到的事情,给我们带来了极大的方便,以前需要在银行排队进行缴费,转账,现在动动手指头就完成了以前每天总是在为每天要吃什么而烦恼,现在打开外卖网站,几分钟的时间,美食就送到了你的身边。 : L# V# E- ^. i( {2 E
一切看上去都是那么的美好但是,今天我想说的可不是歌颂这美好时代,进我想说说那隐藏在暗处的魔鬼 # }1 `: T; T2 r; o) C1 Y9 M
毋庸置疑,互联网环境中的信息安全成了不可忽视的课题一个不安全的业务系统,往小了说,可能会给我们带来烦恼或者经济损失,重者甚至可以让我们身败名裂,直接破产,改变人生轨迹开放式Web应用程序安全项目(OWASP,Open Web Application Security Project)是一个组织,它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。
9 ?3 w1 e; O8 k 其目的是协助个人、企业和机构来发现和使用可信赖软件他是一个非盈利性为目的的组织,OWASP是一家国际性组织机构,并且OWASP基金会支持OWASP世界各地分会的工作OWASP是一个开放的、非盈利组织,它致力于协助GOV、企业开发、升级各类应用程序以保证其可信任性。
% U. J. @* u' P& ] ^8 N5 @ 今天我们来看看OWASP 2017安全领域的TOP 10 漏洞之一(后续我们逐个来讨论其余的9个),那就是大名鼎鼎的注入攻击,今天我们注重来看一看SQL注入。
) c2 B4 Q I9 s* H6 [$ o# V 对一些防范不安全的小型网站来说或者蹩脚程序员的产物,SQL注入带来了难以言说的损害,让人们不敢再放心的在互联网上进行转账,消费严重影响了互联网消费生态的形成从今天开始,我们逐个讨论一下OWASP基金会所列举的TOP 10的安全风险,做到了然于心,我们了解这些不是为了黑别人,不是为了攻击,而是在了解了别人的攻击向量之后,我们可以做到有目的的防范,让我们的业务安全而平稳的运行。
# I# O9 w- V4 j 今天洋洋洒洒讲了这么多做开头,剩下的一点内容,我们来看看A1:注入攻击。举个简单的例子作为引子,我们在打开各种网站的时候,需要登录才能做相应的操作,参考下图:
" ~& z2 B5 F4 j: C% _1 n6 M4 _+ w; N* O 正常情况下,我们可以通过注册或者oAuth第三方认证(在前面的历史文章中有介绍)来进行登录,那么如果我们没有用户名如何来登录该系统呢?对某些蹩脚的程序员或者安全意识不高的公司来说的话,他在登录的SQL判断语句中可能会这样写:
7 Y0 U3 l/ \# e* \) G SELECT * From Table WHERE Name=XX and Password=YY其中XX和YY的值分别肯定是从前台页面上用户输入的"用户名"和"密码"正常情况下,一切看上去都很美,但是隐藏在暗处的魔鬼是什么呢?。
* G, }" W2 J. |/ A% @) J" p 如果用户在上述页面的"用户名"处输入这样的值:or 1=1 – ; E" E5 x m7 ]* E3 j" m$ I
这时,会发生什么?如果网站安全性不好的话,直接从前天读取相关数据再后台组装成SQL,那么组装好的SQL语句就会如下:SELECT * From Table WHERE Name= or 1=1 --XX and Password=YY
/ e" ]+ v+ q/ U+ \' Q( ]0 z$ @ 这条语句意味着什么呢?首先—是注释符,也就是后面的语句是不起作用的那么上面的语句就等同于下面的语句SELECT * From Table WHERE Name= or 1=1这么样,这条语句where后面是Name= or 1=1,不消说了,这条语句永远为真,因为or 1=1是永远成立的。 8 R8 v$ i( r, J# ^" K& U1 J$ I
对不?那么我是不是实现了在没有用户名,也没有业务授权的情况下取得了非法的登录?当然了,SQL注入取得登录权限,这当然是非法的但是要注意,这只是SQL注入危害的一种,SQL注入带来的危害远不仅仅知识非法登录,他可以取得用户本身权限意外的所有业务数据。 $ k- w* J- l" Q* ?6 j
这个留着后面我们慢慢地讨论吧后面我们将和大家一起搭建起一套实验的环境,在真实的实验环境中来体验OWASP中关于互联网各种攻防的实践,以红蓝军的形式增强大家的理解,增强自己在互联网中的安全意识,保证自己的人生安全。 3 U6 d" u, H' U) U# \
每天学习一点点,每天进步一点点,欢迎各位关注本头条号,共同进步。如各位喜欢,也欢迎转发,点赞,在评论区留言和小编互动。
/ r2 y q x9 I/ }) R+ W. m! ^1 ]0 Z) N- v6 ^, n; o6 L7 B2 m2 Q
+ a# g ]& z5 B! ?9 g2 ]( K$ l N
4 t" L' ^; F4 F) M
, g. ~7 u( r! O0 X z( \- H# C0 k- c |