python3下载远程代码并执行
第一步:
先在gist之类的网站上贴上代码,目的不是高亮,而可以raw的形式获取代码,这样可以省掉处理html的时间,我这里用的是pasteraw:
远程上的代码:http://cdn.pasteraw.com/6hwu5u4ujhdv5gvyh07qrahb9d0orer
tkinter代码的兼容性真是超好,我基本抄的十年前教程上的代码,其中代码如下,那些奇怪的字符是原型是一个2K的MP3文件:
"""
这个代码主要示范:
1、示范python3如何从远程下载代码并执行
2、示范如何把一个文件转成文本嵌入到程序代码中。
3、示范把字符还原成文件,并调用。这段代码中使用的是base85编码
# 调用方法 import urllib.request; code_url = url; req = urllib.request.urlopen(code_url).read();exec(req)
#运行环境 windows python3.4
#2016年9月1日 11:51:16 codegay
"""
import base64
amp3 = r"""
s5P6?!#0DW?irk8!4Z3Y@0-^#!bBcl]=Z(=Lku)C]=Xdb`(kZokl-G8!K0,aE&\]!EsobJ#N(aK5EtF<ci<KRi1(nIpc`!`arL!PPR$0(7rUdB&!mh,0(;.,5QDK*"Tj6?s5P<A#o/Rd
dU.u!!2*.:'F2>G\SrpF;o4$MIHd=#c-m"ZM?;c5:(t(=U4CV/4nG`BN2Z^Bk[B;Z-m2=d-o(L,ht3o!s75JIVtnO8LjR&'..htts2>^]L]dd&[cr:\@q[G>"omU*`"!T9md;1;-j,4M
jqp@Mc?"c\*PCQ$5g`g6mOV_maK=i&Qg7!YL4@Ttku<Ym?GsBW'<MaC5O?/bs%i5dV5[o*Z5Hqpf73fZrRO[]ZB:NWYPf/Y]uP\cbYk=llV%1b63#sh`![<Kk5IP(7,@qloMNM#^&ao8
nh>_\"%!R6@0f4*`$#(BdM"c46'8:,RAbr+e'mu9ke?<]s7Ce`A@,8;*PmgC$loL@)G>RFeAWG,$lZJFTh<B?!$$Qu2h*r_JdEXUr@e32+N+g.!nQI^;?WEmTcMHX"I`2^j!k"t+B#Ds
:hf@kmE.0/s&U?RGQ3>-E_&n2I2Rj/mma4i7*5Gcs8W,U6_*=!(uYT/0H^K<m9QOc8F$?q16*7`Z/=br"p$2Cg]m^LV$$bX,/aj)F2%>H-q.0h2tT32@3^O6ns#p`'_l3oaAE*t2dB$#
!#M);@/k`sd1\uBo-5.OVMkNJs7W#?a(ko65`B8E7s3q^=5(Cgs8ApBf<%drj:&srgccke$+,kVp*;X&?r@4/iul8L(JD'mp//d*Z/P_I$m5D_+;4^IpoV<\.`ZDUj++W8SfVe8WQ#4e
r^&jIJQo&(ro@,[\+pT0Q''`N_#h5uVuDDMg]!.7aYKljRa-f.&XCA:aU,KEeVqQN*JuoW?reNPj!)DK'No2DIL8J01*ur1"CL<o!Wd66/,rM8s.Z4"kG"aNW)F%=61b2LW3N#[Y^A&+
,TX*la%]q=@%d_m;,rQ;epG0_f/"5UZ@S;\*qh&J&teb--O"$S8QC*<+A<#,PMXHQs5P6?'GME;a9l\qOGROGfF][)P=uGp%Eo=0,"1"*'3M78&J5XO;)FW!2"hSsbm_[=o@??mWM/7K
T]CV&s7WTB:]LIp<AagGs8Ds4_+EK[KG#"qmS$G,1LCPIO?*CUMO$09s5P<A*Y^koe/hL]J8ctV%%0-c,]FI__dOqC5g`H%-*]#0`2`k(`pja(_dT=\?5f6^HU%BSm4[o[:[.iH#App&
ralu-MkGY1Z.(<q2TJ9e"?qRKXDc`_FH$?ZLC9S[pWF,>F8t8C`$lC>hS^L4-ihHpk!M42U)XR7XAc.;lGpPn)=J<sc-0HqR*'94D67E9DV2+?\h1%Jdn&W^l?5UX0i"l\8k-F8VgiX&
euT5dU8H?qobe??>k(]8MQ/@XDaG&:_ao+"q#B@u`%i-kG,,/+5QIcB(]")P`0)8a07;!&+FBKuX'A&rs1ZNr\`qS>4hpIWs5*BTBC"crh-/>/pIIq$@jO]3nPa,#EH9+_o;.^`PtXY%
19*@^aamQ+Q<U["9oN),B^3rE"0V[a+N,oT_d\#:Qp:X]<JG2eaU^b$W!\BH?(-9C(d+S4F\#MeBiU5orpJaTR?:@*d]3f)WuqBAk:2@N[-("@9e>#"29N*3s8W-!CD0T?C=Z8)$C32D
s8F;Wjjj\[$33nV"ciWC,/aj'CA(%3a:J=i.`s5Um)N'_s8U5HXjGu*jY-Z6r2'Gn6YQCobQ%/Q0srH:?hm>^)3Dk\;XHhN\Op$B:r$fQS`3a$i=Kt;lT;qdnL@3u9gpij3ArKEWiE)!
WiE)!WiE*!iul8T!!!*lzWiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE)!WiE'"""
def decodemp3():
bmp3=base64.a85decode(amp3.encode())
with open("my.mp3","wb") as f:
f.write(bmp3)
import os
os.system("start my.mp3")
from tkinter import *
class app:
def __init__(self,master):
frame = Frame(master)
frame.pack()
self.button = Button(frame,text="exit", fg="red",command=frame.quit)
self.button.pack(side=LEFT)
self.hi = Button(frame, text="16年前书上的tkinker代码现在还能跑,点这个按钮会解码文本并弹出播放MP3",command=self.say_hi)
self.hi.pack(side=LEFT)
def say_hi(self):
print("hi~~")
decodemp3()
root = Tk()
a = app(root)
root.mainloop()
第二步:
复制以下代码到IDLE 回车执行,稍等一会可以看到效果。
import urllib.request; code_url = "http://cdn.pasteraw.com/6hwu5u4ujhdv5gvyh07qrahb9d0orer"; req = urllib.request.urlopen(code_url).read();exec(req)
2016年9月1日 10:09:20 codegay
python3下载远程代码并执行的更多相关文章
- WordPress Social Warfare组件 远程代码漏洞执行详细复现
0x00前言 今天在知道创宇上发现3月26日提交WordPress XSS和远程代码执行漏洞,于是试着复现了下远程代码执行漏洞 该漏洞源于Social Warfare组件,并且版本<=3.5.2 ...
- Weblogic CVE-2018-3191远程代码命令执行漏洞复现
0x00 简介 北京时间10月17日,Oracle官方发布的10月关键补充更新CPU(重要补丁更新)中修复了一个高危的WebLogic远程代码执行漏洞(CVE-2018-3191).该漏洞允许未经 ...
- Git使用之二:下载远程代码到本地指定文件夹
一.前期工作: 1.准备好本地的文件夹 2.如果后期需要继续以该文件夹进行同步的,则需要配置该文件夹,方法请参考之前的 Git使用之一:创建仓储和提交文件 二.用clone(克隆方式下载) 在本地下 ...
- mac 利用svn下载远程代码出现Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.
终端输出的信息:Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo. ...
- “Xavier”安卓木马分析:可静默收集数据并远程代码执行
趋势科技研究发现了一款Android恶意木马——Xavier.在谷歌Play应用市场中,超过800款Android应用感染了该恶意木马,影响数百万Android用户.感染的应用范围覆盖图片编辑器,墙纸 ...
- struts2之高危远程代码执行漏洞,可造成服务器被入侵,下载最新版本进行修复
Struts2 被发现存在新的高危远程代码执行漏洞,可造成服务器被入侵,只要是Struts2版本 低于 2.3.14.3 全部存在此漏洞.目前官方已经发布了最新的版本进行修复.请将stru ...
- [转]python3之paramiko模块(基于ssh连接进行远程登录服务器执行命令和上传下载文件的功能)
转自:https://www.cnblogs.com/zhangxinqi/p/8372774.html 阅读目录 1.paramiko模块介绍 2.paramiko的使用方法 回到顶部 1.para ...
- Nexus Repository Manager 3(CVE-2019-7238) 远程代码执行漏洞分析和复现
0x00 漏洞背景 Nexus Repository Manager 3是一款软件仓库,可以用来存储和分发Maven,NuGET等软件源仓库.其3.14.0及之前版本中,存在一处基于OrientDB自 ...
- windows RDP远程代码执行_CVE-2019-0708漏洞复现
windows RDP远程代码执行_CVE-2019-0708漏洞复现 一.漏洞概述 2019年5月14日微软官方发布安全补丁,修复了windows远程桌面服务的远程代码执行漏洞,该漏洞影响了某些旧版 ...
随机推荐
- POI2005Bank notes银行货币
Description Byteotian Bit Bank (BBB) 拥有一套先进的货币系统,这个系统一共有n种面值的硬币,面值分别为b1, b2,..., bn. 但是每种硬币有数量限制,现在我 ...
- arm指令周期
1.大部分算术运算和逻辑运算指令都是单周期的,例如加法.减法.位级运算和移位 2.乘法指令根据操作数位数的不同,从2-5个周期都有可能. 3.无条件跳转语句和跳转语句成功跳转,需要重新填充流水线,因此 ...
- 推荐两本学习linux的经典书籍
- Socket.io和Redis写Realtime App 之express初试
第一步:用npm下载express前端框架 注意事项:首先要确保已经安装了node.js和 npm 然后在项目中创建一个package.json文件,不能完全为空不写,至少要有两个大括号,不然怎么证明 ...
- dos2unix 命令
最近在学习shell编程,可是在<Linux程序设计>指定的网站上下载了源码,使用的时候却一直出问题.提示:"bash: ./here1:/bin/sh^M:损坏的解释器: 没有 ...
- SPSS数据分析—聚类分析
多元分析的主要思想之一就是降维,我们已经讲过了很多降维的方法,例如因子分析.主成分分析,多维尺度分析等,还有一种重要的降维方法,就是聚类分析. 聚类分析实质上就是按照距离远近将数据分成若干个类别,使得 ...
- 谈谈javascript中的日期Date对象
一.日期对象 在javascript中并没有日期型的数据类型,但是提供了一个日期对象可以操作日期和时间. 日期对象的创建: new Date();二.将日期对象转换为字符串 将日期对象转换为字 ...
- jquery实现可拖拽的div
由于项目中并未引入前端开发框架easyui.ext.没有现成的控件可以使用,今天时间算是充裕的时候,自己写了一个可以拖拽.放大缩小的例子.欢迎大家指正. 不啰嗦,上代码: 依赖的文件:jquery.j ...
- JAVA集合类汇总
一.集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...
- MySql 获取当前节点及递归所有上级节点
-- MySql 获取当前节点及递归所有上级节点 -- 参数说明:resultField:查询返回字段,idd 要查询的资源ID值,idFieldName ID字段名,parentIdFieldNam ...