您的位置:首页 > 编程语言 > Python开发

Python病毒篇:漏洞测试及Chrome浏览器漏洞测试

2020-07-29 17:07 387 查看

该文章的目录

  • 事先说明
  • 什么是漏洞
  • 漏洞测试
  • Chrome浏览器漏洞测试
  • 结束
  • 引子

    之前出了几起文章,感觉阅读量一般。今天我又来写文章了!由于时间问题,所以这几天会多更一些,之后几天就没时间更了。在这篇文章中我们会在代码中找漏洞,并且对Chrome浏览器进行漏洞测试。

    创建攻击对象与Python安装

    如果这是你第一次读我的文章,那么请阅读我之前的文章。在阅读以下内容时,请先完成准备工作!

    VirtualBox虚拟机

    官网搜索标题即可进入官网,下载这个软件。

    镜像文件

    百度搜索MSDN,我告诉你。选择操作系统,在这里选择你想要的windows产品版本,在右方复选框中选择更新号,这里以Windows7为例

    复制这一串指令,在迅雷中下载即可。然后打开软件新建虚拟机,跟着提示安装虚拟机即可。

    Python安装

    作者实在不想写,可以翻看我之前的文章。

    事先说明

    不喜勿喷哦!另外有什么问题不要私信我,我没有时间看,在“留言贴”下方留言即可,还有,该文章中的所有黑客技术均为本人自己研究所得,不要抄袭哦!请遵守法律

    什么是漏洞

    漏洞,在网络信息技术邻域的意思是代码中存在瑕疵,导致攻击者可以通过这个瑕疵来进行数据窃取,数据库篡改,代码更改等恶意操作。虽然作者的技术一般,但是这几点还是知道的。以往的我们通常都是使用安全软件来进行漏洞填补,现在,我们可以自己在代码中找漏洞,亦或者来测试我们开建的软件与网站。

    漏洞测试

    现在我们一起看一段代码,这是一段数据库的代码,使用的是SQLite3数据库

    import sqlite3
    con = sqlite3.connect('data.db')
    cursor = con.cursor()
    cursor.execute('delete from user where id = 1')
    cursor.execute('select * from user')
    fetch_answer = cursor.fetchall()
    print(fetch_answer)
    cursor.close()
    con.commit()
    con.close()

    大师应该可以看出,在这段代码中,存在SQL注入的风险。那什么是SQL注入呢?
    相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。(摘自百度百科 https://baike.baidu.com/item/SQL注入攻击/4766224?fr=aladdin)
    简单来说,就是在数据库查询代码中存在瑕疵,给进攻者提供了撞库的风险。回到代码,这段代码的where子句存在风险,所以应该改成:

    cursor.execute('delete from user where id = ?', (1,))

    注意,元组如果只有一项,它的逗号是不能省略的。
    之后我会出几期CTF的教学,其中运用了SQL注入,抓包等多种入侵方法,这里就暂时不展示了。

    Chrome浏览器漏洞测试

    chrome浏览器时谷歌公司发布的一款Web浏览器,这里我们给大家出一期浏览器漏洞测试的教学,之后对于Edge,IE,Opera等浏览器可以采取同样的方法。

    F12开发人员工具

    我们使用f12开发工具,在浏览器中,按下F12按键进入界面。

    在这里,你可以做很多事情。

    进入设置页面

    进入设置页面,然后选择保存的密码,如图

    这里我们可以看到我们保存的密码我这里保存了163邮箱何其他几个网站,现在我们开始测试

    漏洞测试01:密码查看防护测试

    这里我们发现,直接查看密码需要输入Windows用户名何密码。但是这说明浏览器可以读取密码用来与输入的内容进行匹配,所以我们一定要保护好我们的开机密码。不过这说明浏览器可以用密码来保护我们保存的数据的安全。

    漏洞测试02:更改password类型

    我们在f12中,将密码输入框控件中password的类型从password改为text试试看。

    然后我们再来看看,发现Chrome浏览器会显示空白,说明这种方法无法进行。

    漏洞测试03:本地数据库查询

    这里我就我多说了,最后结果其实也是不可行的,用兴趣的小伙伴可以自行百度或csdn!

    结束

    至此,这篇文章就到此结束了,再见

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: