网站安全攻击和防御中的屏蔽代理服务器
网站安全一直是个重要话题,本人写了网络攻防的屏蔽代理服务器相关代码,分享下:
1. 写个网页request类:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
public class WebRequestUtil
{
public static string responseBody = string.Empty;
public static bool GetWeb(string uri, string proxyAddress = "", int proxyPort = 0)
{
string serverUri = string.Format(uri);
set limit for supporting 200 connection
ServicePointManager.DefaultConnectionLimit = 1000;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serverUri);
if (!string.IsNullOrEmpty(proxyAddress))
{
WebProxy myproxy = new WebProxy(proxyAddress, proxyPort);
request.Proxy = myproxy;
}
extend timeout for decrease request timeout re-trying times
request.Timeout = 60 * 1000;
request.Method = @"GET";
UTF8Encoding encoding = new UTF8Encoding();
request.Headers.Set("Cache-Control", @"no-cache");
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)";
try
{
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
bool isSent = false;
int retryCount = 0;
string errorStr = string.Empty;
while (!isSent && retryCount <= 2)
{
retryCount++;
try
{