首页 文章 精选 留言 我的

精选列表

搜索[RBAC权限],共10000篇文章
优秀的个人博客,低调大师

PublicCMS 网站漏洞 任意文件写入并可提权服务器权限

PublicCMS是目前网站系统中第一个采用JAVA架构 TOMCAT+Apcche+Mysql数据库架构的CMS网站,开源,数据承载量大,可以承载到上千万的数据量,以及用户的网站并发可达到上千万的PV,PublicCMS静态全站html,访问速度极快,模板样式多,可自己设计,第三方的API接口也很多,深受网站运营者的喜欢。最重要的是开源,免费升级,支持动静分离,数据库及时备份等功能。 SINE安全于最近对该PublicCMS的系统进行全面代码安全检测,发现该PublicCMS系统存在网站漏洞,该漏洞可以对网站的任意目录下上传任意格式的文件,比如jar格式,JSP格式,war格式的脚本木马。下面针对于PublicCMS,我们进行详细的分析以及漏洞的如何利用。我们首先来搭建该系统的网站环境,使用Apache +Tomcat+Mysql数据库的一键安装环境包进行搭建,可以使用phpstudy来搭建,快捷,方便,稳定,可以随时切换服务器的环境版本,以及架构搭建好后,我们先登录下网站的后台,如下图: 我们首先来搭建该系统的网站环境,使用Apache +Tomcat+Mysql数据库的一键安装环境包进行搭建,可以使用phpstudy来搭建,快捷,方便,稳定,可以随时切换服务器的环境版本,以及架构。搭建好后,我们先登录下网站的后台,如下图: 那么怎样才能上传到任意文件夹下呢? 比如我要上传到网站的根目录下该怎么弄呢?因为PublicCMS存在可以构造zip文件,并指定解压到任意目录。我们来构造一下ZIP,创建一个文件,名称为:../../../../../../../../apache-tomcat-7.0.81/webapps/publiccms/safe.jsp,然后通过后台上传上去即可。上传后我们访问网站根目录下safe.jsp 直接执行命令如下图: PublicCMS网站漏洞是如何产生的呢? controller目录下\admin\cms\CmsWebFileAdminController.java代码里的uzip调用方式上出现了漏洞,该系统采用的是dounzip的方式去调用,dounzip是解压缩常用到的,所以上传ZIP文件的时候,自动解压缩了。导致我们可以构造特殊的文件名,来将我们的脚本木马上传到网站任意目录下。 该代码通过获取targetPath的上传路径值与压缩文件里的名字进行自动拼接,在拼接的这个过程当中,../ 可以对目录进行跨站。网站漏洞产生最根本的原因就是在处理这个压缩文件的时候并没有对压缩里的文件名进行判断与过滤,导致可以使用特殊的文件名进行定义,并传入到服务器后端执行代码,通过上传JSP木马后门,可以直接对服务器进行控制,危害性较高。 关于PublicCMS网站漏洞修复 已讲该漏洞报告给PublicCMS官方(天津黑核科技有限公司),并告知漏洞产生的具体细节,官方已对该漏洞进行了修复,请使用该PublicCMS网站的客户,尽快升级到最新版本即可。专注于安全领域 解决网站安全 解决网站被黑 网站被挂马 网站被篡改 网站安全、服务器安全提供商-www.sinesafe.com --专门解决其他人解决不了的网站安全问题.

优秀的个人博客,低调大师

全新Linux+Python高端运维班-Linux用户创建及权限管理

第三周作业内容: 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 1 2 3 4 [root@liu~] #who|cut-d''-f1|sort-u centos liu root 2、取出最后登录到当前系统的用户的相关信息。 1 2 3 4 5 6 第一种方式: [root@liu~] #last|head-n1 liutty8:2SunAug2110:26stilllogged in 第二种方式: [root@liu~] #who|tail-n1 liutty82016-08-2110:26(:2) 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 1 2 [root@liuljohn] #cut-d:-f7/etc/passwd|uniq-c|sort-n|tail-n1 25 /sbin/nologin Note:/etc/passwd name:password:UID:GID:GECOS:directory:shell 4、将/etc/passwd 中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。 1 2 3 4 5 6 7 8 9 10 11 12 [root@liuljohn] #sort-t:-k3-n/etc/passwd|tail-10|tr'a-z''A-Z'>/tmp/maxusers.txt [root@liuljohn] #cat/tmp/maxusers.txt RTKIT:X:499:497:REALTIMEKIT: /PROC : /SBIN/NOLOGIN LIU:X:500:500:LIUJIAN: /HOME/LIU : /BIN/BASH BASH:X:501:501:: /HOME/BASH : /BIN/BASH BASHER:X:502:502:: /HOME/BASHER : /BIN/BASH TESTBASH:X:503:503:: /HOME/TESTBASH : /BIN/BASH NOLOGIN:X:504:504:: /HOME/NOLOGIN : /SBIN/NOLOGIN USER1:X:505:505:: /HOME/USER1 : /BIN/BASH CENTOS:X:506:506:: /HOME/CENTOS : /BIN/BASH USERADD1:X:507:507:: /HOME/USERADD1 : /BIN/BASH NFSNOBODY:X:65534:65534:ANONYMOUSNFSUSER: /VAR/LIB/NFS : /SBIN/NOLOGIN 5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。 1 2 3 4 5 6 7 8 9 10 11 12 [root@liuljohn] #ifconfigeth1 eth1Linkencap:EthernetHWaddr00:0C:29:45:CC:5E inetaddr:192.168.188.21Bcast:192.168.188.255Mask:255.255.255.0 inet6addr:fe80::20c:29ff:fe45:cc5e /64 Scope:Link UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1 RXpackets:5871errors:0dropped:0overruns:0frame:0 TXpackets:2355errors:0dropped:0overruns:0carrier:0 collisions:0txqueuelen:1000 RXbytes:486015(474.6KiB)TXbytes:259218(253.1KiB) Interrupt:19Baseaddress:0x2000 [root@liuljohn] #ifconfigeth1|head-n2|tail-n1|cut-d:-f2|cut-d''-f1 192.168.188.21 6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [root@liuljohn] #ls/etc/*.conf|tr'a-z''A-Z'>/tmp/etc.test [root@liuljohn] #cat/tmp/etc.test /ETC/ASOUND .CONF /ETC/AUTOFS_LDAP_AUTH .CONF /ETC/CAS .CONF /ETC/DNSMASQ .CONF /ETC/DRACUT .CONF /ETC/FPRINTD .CONF /ETC/GAI .CONF /ETC/GRUB .CONF /ETC/GSSAPI_MECH .CONF . . . 7、显示/var目录下一级子目录或文件的总个数。 1 2 [root@liuljohn] #ls/var|wc-l 21 8、取出/etc/group文件中第三个字段数值最小的10个组的名字。 1 2 3 4 5 6 7 8 9 10 11 [root@liuljohn] #sort-t:-k3-n/etc/group|head-10|cut-d:-f1 root bin daemon sys adm tty disk lp mem kmem 9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [root@liuljohn] #cat/etc/fstab/etc/issue>/tmp/etc.test [root@liuljohn] #cat/tmp/etc.test # #/etc/fstab #CreatedbyanacondaonThuFeb1205:17:122015 # #Accessiblefilesystems,byreference,aremaintainedunder'/dev/disk' #Seemanpagesfstab(5),findfs(8),mount(8)and/orblkid(8)formoreinfo # UUID=3fcabd0f-e9fb-4618-918d-c9e004fe6a59/ext4defaults11 UUID=234cc62b-7746-477d-ad58-8fb2448b9788 /boot ext3defaults12 UUID=b2c5da64-87b4-44c0-8864-f4a006b824fcswapswapdefaults00 tmpfs /dev/shm tmpfsdefaults00 devpts /dev/pts devptsgid=5,mode=62000 sysfs /sys sysfsdefaults00 proc /proc procdefaults00 CentOSrelease6.5(Final) Kernel\ronan\m 10、请总结描述用户和组管理类命令的使用方法并完成以下练习: (1)、创建组distro,其GID为2016; 1 2 3 [root@liuljohn] #groupadd-g2016distro [root@liuljohn] #tail-1/etc/group distro:x:2016: (2)、创建用户mandriva, 其ID号为1005;基本组为distro; 1 2 3 [root@liuljohn] #useradd-u1005-g2016mandirva [root@liuljohn] #idmandirva uid=1005(mandirva)gid=2016(distro)组=2016(distro) (3)、创建用户mageia,其ID号为1100,家目录为/home/linux; 1 2 3 4 5 [root@liuljohn] #useradd-u1100-d/home/linuxmageia [root@liuljohn] #idmageia uid=1100(mageia)gid=1100(mageia)组=1100(mageia) [root@liuljohn] #tail-1/etc/passwd mageia:x:1100:1100:: /home/linux : /bin/bash (4)、给用户mageia添加密码,密码为mageedu; 1 2 3 [root@liuljohn] #echo"mageedu"|passwd--stdinmageia 更改用户mageia的密码。 passwd :所有的身份验证令牌已经成功更新。 (5)、删除mandriva,但保留其家目录; 1 2 3 4 5 [root@liuljohn] #userdelmandirva [root@liuljohn] #ls/home/ bash bashercentoslinuxliumandirvanologintestbashuser1useradd1 [root@liuljohn] #idmandirva id :mandirva:无此用户 (6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin; 1 2 3 4 5 6 [root@liuljohn] #groupaddpeguin [root@liuljohn] #useradd-u2002-gdistro-Gpeguinslackware [root@liuljohn] #tail-1/etc/passwd slackware:x:2002:2016:: /home/slackware : /bin/bash [root@liuljohn] #idslackware uid=2002(slackware)gid=2016(distro)组=2016(distro),2017(peguin) (7)、修改slackware的默认shell为/bin/tcsh; 1 2 3 [root@liuljohn] #usermod-s/bin/tcshslackware [root@liuljohn] #tail-1/etc/passwd slackware:x:2002:2016:: /home/slackware : /bin/tcsh (8)、为用户slackware新增附加组admins; 1 2 3 4 5 6 7 8 9 10 11 [root@liuljohn] #sort-t:-k3-n/etc/group|head-10|cut-d:-f1 root bin daemon sys adm tty disk lp mem kmem (9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天; 1 2 3 4 5 [root@liuljohn] #passwd-n3-x180-w3slackware 调整用户密码老化数据slackware。 passwd :操作成功 [root@liuljohn] #tail-1/etc/shadow slackware:!!:17034:3:180:3::: (10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova; 1 2 3 4 5 [root@liuljohn] #groupaddclouds [root@liuljohn] #groupaddnova [root@liuljohn] #useradd-u3003-gclouds-Gpeguin,novaopenstack [root@liuljohn] #idopenstack uid=3003(openstack)gid=2019(clouds)组=2019(clouds),2017(peguin),2020(nova) (11)、添加系统用户mysql,要求其shell为/sbin/nologin; 1 2 3 [root@liuljohn] #useradd-s/sbin/nologinmysql [root@liuljohn] #tail-1/etc/passwd mysql:x:3004:3004:: /home/mysql : /sbin/nologin (12)、使用echo命令,非交互式为openstack添加密码。 1 2 3 4 [root@liuljohn] #echo"openstack"|passwd--stdinopenstack 更改用户openstack的密码。 passwd :所有的身份验证令牌已经成功更新。 [root@liuljohn] # 本文转自 ljohnmail 51CTO博客,原文链接:http://blog.51cto.com/ljohn/1840868,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册