- 博客(17)
- 收藏
- 关注
原创 BUPT软件安全实验六
时buffer中格式化字符串为"ERR Wrong command:%497d\x39\x4a\x42\x00",根据格式化字符串,sprintf会读取一个参数以%497d的格式写入outbuf,由于未提供该参数,会自动将栈地址0x0012FAE0中的值视为该参数,即0x12FF80(十进制1245056)。(5)解决思考题,即:破解foo.exe程序,在不改变源代码的情况下,要求通过命令行输入,利用格式化字符串漏洞%n的方式,调用隐藏的foo函数,并尝试调用一个shellcode。
2023-04-18 17:13:10
856
2
原创 BUPT软件安全实验五
那么只需要找到这个过程中保存栈的返回值的位置,且将返回值修改为bar函数的地址,并根据这两项信息确定2个参数的值,再运行程序,就可以调用bar函数了。(11)由于shellcode的起始地址为 0x0012FE48,第一个S.E.H地址为 0x0012FF18(指向下一个S.E.H的指针) 0x0012FF1C(异常处理地址),因此shellcode需要使用0x0012FF1C-0x0012FE48=212个字节进行填充,且注释掉__asm int 3。
2023-04-18 17:08:18
872
原创 BUPT软件安全实验四
通过编写的fuzz源代码,也可以通过连接目标主机并发送脏数据包实现fuzz攻击,达到让目标服务器崩溃的效果,通过ollydbg分析该过程时,只能找到程序崩溃的位置,并没有找到程序崩溃的原因,虽然理论上是重复插入了相同的数据导致FTP服务器异常。此刻,程序利用指令“sub esp,124”开辟一个292(0x124)个字节的栈空间,CWD命令后面的参数,也就是前面运行的攻击脚本myfzz.py中buffer变量的值,就存放在这个空间中。而要达到这一点,我们要去主动学习更多的知识、熟悉更加强有力的工具。
2023-04-18 17:03:43
807
原创 BUPT软件安全实验三
可以看出栈溢出对程序运行的安全性有很大的威胁,如果不对栈进行保护,只要系统中存在栈溢出漏洞,即可令攻击者通过非正当方法获取操作权限。(6)解决思考题,即:在不修改StackOverrun程序源代码的情况下,构造shellcode,通过JMP ESP的方式实现通过记事本打开shellcode.txt(可使用CreateProcessA或WinExec等API)。查看缓冲区信息,可以看到dest指向地址0x0012FAF0,其为数组的存放起始位置,也就是shellcode注入的起始位置。
2023-04-18 16:57:59
887
原创 BUPT软件安全实验二
(4)解决思考题,即:在不修改源代码的情况下,修改OverFlow_EXE程序的流程,通过弧注入的方式,不植入可执行代码,让其调用MessageBoxA函数(函数地址:0x77E23D68)弹出对话框(对话框显示bupt),之后调用ExitProcess函数(函数地址:0x77E7B0BB)退出进程。通过这次实验,我对程序堆栈间的调用关系有了更清晰的了解,也熟悉了堆栈溢出的基本原理,并实际动手练习了堆栈溢出利用方法,收获颇丰。前面进行的是淹没邻接变量改变程序的实验,下面进行淹没返回地址改变程序的实验。
2023-04-18 16:51:58
683
原创 BUPT软件安全实验一
前面已经提到过字符串搜索的方式,其实很多时候,这种设定好的值由于要和输入的值比较,是会在汇编语言中的注释栏出现的。若其值不为0,则输出判断错误的语句。我们平常编写程序时,应该着重考虑到攻击者可能会对程序进行反汇编和修改,因此,我们最好可以将程序结果进行一定的隐藏,如对加密程序的算法进行混淆,以增大攻击者反汇编的难度,提高程序的自我防护能力。可以看到,x64dbg主要由4个窗口组成:左上角为反汇编的结果(形成的汇编语言),左下角为内存的地址和数据的值,右上角为寄存器的情况,右下角为堆栈的地址和相应的数据。
2023-04-18 16:46:56
478
4
原创 信息系统安全实验之基于国产麒麟操作系统的基线检查工具综合实验
可以看到除了root用户和自设用户以外,其他用户的口令字段均为“*”或者“!”,表明该账号已被锁定或者该口令已经过期,因此系统不存在空口令用户。原因:由于该虚拟机是从别人那里拷贝过来的,而该虚拟机环境之前使用的VMware版本与我的VMware版本(16)不一致。可以看到口令最大使用期限为99999天、两次口令的最小修改时间为0、口令过期前警告时间为7天。解决方法:在指令前加上“sudo”,并按照提示输入用户密码即可。(9)新建一个用户buptlqx,设置密码测试以上规则,发现配置成功。
2023-04-18 16:29:41
1685
原创 信息系统安全实验之文件上传漏洞导致主页篡改实验
服务器端的检查最好使用白名单过滤的方法,这样能防止大小写等方式的绕过,同时还需对%00截断符进行检测,对HTTP包头的content-type也和上传文件的大小也需要进行检查。在某些环境中,用户能上传,但不能访问。文件上传攻击的本质就是将恶意文件或者脚本上传到服务器,专业的安全设备防御此类漏洞主要是通过对漏洞的上传利用行为和恶意文件的上传过程进行检测。(4)配置数据库文件,使用notepad++打开zd\sys\config.php,编辑数据库的账号和密码,数据库的账号默认为root,密码默认为root。
2023-04-18 16:25:07
3530
1
原创 信息系统安全实验之Web服务器防SQL注入安全加固实验
(4)对于安全性要求比较高的信息系统,可以考虑用新兴的身份认证方式代替传统的口令登录方式,比如使用生物特征:指纹、人脸、虹膜等,这些生物特征是具有高度唯一性的,因而比一般的口令登录认证安全得多。(2)可以根据实际情况,将系统的登录口令以某种安全的加密算法保存在数据库中,比如MD5,SHA256,SM3等。可以知道,id后面跟的只能是数字,那么现在可以找到代码中关于 ry_id 可以获取变量的地方,发现对ry_id对类型限制被注释了,导致SQLMap可以借此漏洞进行注入。
2023-04-18 16:14:48
550
1
原创 信息系统安全实验之SQLMap工具使用综合实验
切换到PC1的命令行的相应目录下,输入“python sqlmap.py -u "http:// 192.168.161.135/ry.php?ry_id=1"”,其中“-u”参数用于指定注入点的URL。(2)根据SQL注入的原理,可以得到一种防范方法,就是对构成网站的目录中(在实验中该目录为C:/code/sql)的相关php文件(比如ry.php)进行修改,这样可以使得SQLMap无法检测到注入点。(1)在本次实验中,我注意到:注入点已经提前给出,而如果注入点没有给出的话,就需要我们手动寻找注入点。
2023-04-18 16:10:08
551
1
原创 网络安全实验之《防火墙》实验报告
SNAT:开通内网机器的外网访问权限,是指在数据包从网卡发送出去的时候,把数据包中的源地址部分替换为指定的IP,这样,接收方就认为数据包的来源是被替换的那个IP的主机,MASQUERADE是用发送数据的网卡上的IP来替换源IP,因此,对于那些IP不固定的场合,比如拨号网络或者通过dhcp分配IP的情况下,就得用MASQUERADE。解决方法:此时我的主机连接的是wifi,我把wifi关掉,然后主机连接手机的移动热点,再重启ubuntu,输入ifconfig,ens33处便能正常显示ip了。
2023-04-17 09:45:12
9257
1
原创 网络安全实验之《VPN》实验报告
通过本次实验,我了解了什么是虚拟专用网(VPN),学习了VPN的协议(第二层隧道协议和第三层隧道协议),并动手进行了IPSec的配置,通过抓包分析了IKE SA和IPSec SA的建立过程。从图中可以看到,进入路由器的数据包(左侧)的信息源IP为192.168.1.10,目的IP为192.168.2.10,但是路由器出去的数据包的源IP转为了10.0.0.1,目的IP为10.0.0.2,另外可以看到下面的第6条信息中可以看到ESP的encrypts the received packet包。
2023-04-17 09:45:09
6037
原创 网络安全实验之《网络扫描》实验报告
TCP connect利用操作系统提供的connect()系统调用进行扫描,扫描器调用socket的connect()函数发起一个正常的连接,如果connect()连接成功,说明目标端口处于监听状态,若连接失败,则说明该端口是关闭的或者被防火墙等过滤。同时,在进行实验的过程中,我也遇到了许多问题,在解决这些问题的过程中,我也收获了许多,学习到了很多。可以看到扫描出了该网络号下的5台主机,其中也包括1为物理机的虚拟网卡IP,2为网关,128为扫描端IP(因为扫描端和服务器端在同一网段下),134为服务器端。
2023-04-16 17:15:26
4133
原创 信息隐藏与数字水印实验2——WAV音频的LSB信息隐藏
通过WAV音频的LSB信息隐藏实验,我更加深入地了解了信息隐藏和数字水印的基础技术、WAV文件格式和归一化相关系数NC的原理,较好地掌握了LSB针对WAV音频的隐写及提取的基本操作,在理论基础和动手实践方面都得到了很大的提升,这些都是仅在课堂学习中获取不到的宝贵经验,正所谓“实践方能出新知”。当然,和通过最低有效位进行隐写的方式相比,差距还是稍微大一些。同时,我对python这门语言以及相应的开发工具(pycharm)的使用有了更进一步的熟练掌握,也真真切切地感受到了编程语言应用于实际场景的快捷和便利。
2023-04-16 17:00:12
1682
原创 信息隐藏与数字水印实验1——《信号处理基础》
如下所示,第一行第一列输出原始灰度图,标注的名称为“载体图像”,第一行第二列为嵌入秘密信息后的图像,标注的名称为“携密图像”。通过本次信号处理基础实验,我更加深入地了解了信息隐藏和数字水印的基础技术,较好地掌握了LSB隐写及提取的基本操作,在理论基础和动手实践方面都得到了很大的提升,这些都是仅在课堂学习中获取不到的宝贵经验,正所谓“实践方能出新知”。运行代码后的结果如下(其中第一行第一列输出彩色图,标注的名称为“彩色图像”,第一行第二列为灰度图像,标注的名称为“灰度图像”。
2023-04-16 16:56:28
515
原创 网络安全实验之《ARP欺骗攻击》实验报告
从上图可以看到第33行,Kali向网关询问192.168.161.134 Win7的MAC地址,因为之前的攻击更改了网关的ARP缓存表,所以网关将Kali的MAC地址当做Win7的MAC地址进行发送。同时,在进行实验的过程中,我也遇到了许多问题,在解决这些问题的过程中,我也收获了许多,学习到了很多。通过本次实验,我对ARP协议以及ARP报文的结构有了进一步的了解,掌握了ARP欺骗攻击的原理以及ARP欺骗攻击工具的使用,同时尝试了自己编写脚本来实现ARP欺骗攻击。(6)查看被arp投毒后的靶机arp信息。
2023-04-16 16:22:49
12420
2
原创 网络安全实验之《拒绝服务攻击检测》实验报告
根据拒绝服务攻击的原理:“拒绝服务攻击是针对网络应用有限数量的服务能力,发起大规模的网络服务的请求,耗尽网络应用能够提供的服务计算资源等,使网络应用无法对正常用户的请求进行服务,实现拒绝服务。这些知识是从课本上学不到的,正所谓“纸上得来终觉浅,绝知此事要躬行”。可以看到,日志文件中触发网络攻击告警信息的检测规则的编号与配置的检测规则的编号相同,也与wireshark捕获的包的特征相同。同时,在进行实验的过程中,我也遇到了许多问题,在解决这些问题的过程中,我也收获了许多,学习到了很多。
2023-04-16 16:10:38
1916
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人