C# 實現簡單IIS

作者: David 分类: .Net 发布时间: 2014-08-31 10:54

還記得Many QQ的網頁遠程控制麼?我猜也應該是這麼實現的。

公司的軟件到處都要輸賬號密碼,即使有之前的熱鍵自動輸入,新的項目管理軟件用WPF實現,所以用按鍵自動輸輸入有點麻煩,主要還是WPF沒有“控件”,無法捕獲到密碼框的句柄,做後台發送有點麻煩。

So,我從數據通信方面著手,監聽下發送的數據包和服務器地址,再使用數據包重定向軟件,將軟件的數據全部轉到自己弄的軟件上,嘿嘿,強制返回成功登錄的信息,配合發送按鍵,即使我輸錯密碼也能照常登錄,那麼基於這個就可以無障礙登錄其他同事的賬號。可惜他不是用域名解析而是直接指定IP地址,要是用域名解析,就可以不用數據包重定向軟件,直接改Hosts…..

簡單的東東不說了,上IIS部分代碼。

using System;
using System.IO;
using System.Net;

namespace Last
{
    class Program
    {
        static void Main(string[] args)
        {
            byte[] sendData = null;

            HttpListener listener = new HttpListener();
            //這裡有兩種寫法
            //不綁定IP地址,內外網均可訪問
            listener.Prefixes.Add("http://+:80/");

           //綁定IP地址
            //listener.Prefixes.Add("http://127.0.0.1:80/");
           
            listener.Start();

            while (true)
            {

                var context = listener.GetContext();
                
                HttpListenerRequest request = context.Request;
                
                Console.WriteLine(string.Format("{0} {1}", request.HttpMethod, request.Url.AbsolutePath));

                sendData = System.Text.Encoding.Default.GetBytes("<b>404 ,你懂的<b>....");
                context.Response.Close(sendData, true);

            }
        }
    }
}

運行截圖

003

10条评论
  • 徐州小夏

    2014年9月9日 上午10:45

    我是用tcpclient实现的,收字节数组分析格式,然后回送字节数组。说实话我还不知道有httplistener这个东西。

    1. Plane

      2014年9月9日 上午11:09

      tcpclient這種好像有點複雜?就像某聊天軟件那樣十六進制…..
      那返回的包是什麼格式呢?

  • 徐州小夏

    2014年9月10日 下午2:47

    你用抓包软件抓一下就知道了,就是ascii码的字节数组,可以直接Encoding.xxx.GetString()转换成字符串,然后分析一下格式就行了,很简单。

    1. Plane

      2014年9月11日 下午3:24

      有空試下tcp的

  • 徐州小夏

    2014年9月23日 上午10:53

    用httplistener重构了远程监控功能,有兴趣来试一下没?我的主页有入口。

    1. Plane

      2014年9月23日 上午11:52

      要是挂在80端口的話基本看不出是程序模擬出來,好有“云”的感覺。

      1. 徐州小夏

        2014年9月23日 下午2:44

        可以自己写页面,然后把manyqq2程序当作后台,搞一个挂机平台出来。其他可玩性还有不少呢。

        1. Plane

          2014年9月23日 下午3:12

          後臺數據交互做成json怎麼樣?這樣可以在任意平臺編寫客戶端,同時也提供網頁版。

          1. 徐州小夏

            2014年9月23日 下午3:20

            部分数据交互是json格式,获取消息和获取好友列表因为是之前写好的,就没改,后期有计划改掉。

          2. Plane

            2014年9月23日 下午6:20

            還要去做獲取好友列表?這個不需要了吧

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注