ASP.NET基础学习(暴力破解密码)

首先写出一段登陆程序:

//ashx端
<%@ WebHandler Language="C#" Class="AddCalation" %>

using System;
using System.Web;

public class AddCalation : IHttpHandler {

    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/html";

        string ispostback=context.Request["isback"];
        string username = context.Request["username"];
        string password = context.Request["password"];
        if (ispostback == "yes")
        {
            if (username == "admin" && password == "2314")
            {
                context.Response.Write("登陆成功");
            }
            else
            {
                context.Response.Write("登陆失败");
            }

        }
        else
        {
            username = string.Empty;
            password = string.Empty;
        }
        string path = context.Server.MapPath("AddCalation.html");
        string content = System.IO.File.ReadAllText(path);
        content=content.Replace("@user",username);
        content = content.Replace("@pass", password);
        context.Response.Write(content);
    }

    public bool IsReusable {
        get {
            return false;
        }
    }
}

//html端
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>加法计算器</title>
</head>
<body>
    <form action="AddCalation.ashx">
        <input type="hidden"value="yes"name="isback" />
        <label for="user">用户名</label>
            <input type="text" id="user" value="@user"name="username" />
            <br />
        <label for="pass">密码</label>
            <input type="password" id="pass"value="@pass" name="password" />
            <br /><input type="submit" value="登陆" />
</form>
</body>
</html>
 

然后写一段C#控制台程序进行暴力破解

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Net;
 5 using System.Text;
 6 using System.Threading.Tasks;
 7
 8
 9 namespace PasswordBreak
10 {
11     class Program
12     {
13         static void Main(string[] args)
14         {
15             WebClient wc = new WebClient();
16             wc.Encoding = Encoding.UTF8;
17             string s="";
18             for (int i = 0; i < 5000; i++)
19             {
20                 s = wc.DownloadString("http://localhost:41566/AddCalation.ashx?isback=yes&username=admin&password=" + i);
21                 if (s.Contains("登陆成功"))
22                 { Console.WriteLine(i); break; }
23             }
24             Console.WriteLine();
25             Console.Write(s);
26             Console.ReadKey();
27         }
28     }
29 }

通过循环依次试验密码来破解自己写的登陆代码中的密码

所以说登陆端口的安全性非常重要。

时间: 2024-10-11 02:35:17

ASP.NET基础学习(暴力破解密码)的相关文章

python 暴力破解密码脚本

以下,仅为个人测试代码,环境也是测试环境,暴力破解原理都是一样的, 假设要暴力破解登陆网站www.a.com 用户 testUser的密码, 首先,该网站登陆的验证要支持 无限次的密码尝试 假设testUser 的密码为 6位的纯数字 1:先长成 6位纯数字密码字典 import os pds=[] rg=range(0,10) for first in rg: for second in rg: for three in rg: for four in rg: for five in rg:

asp.net基础学习笔记

原文地址:http://blog.csdn.net/oxoxzhu/article/details/8652530 1.概论 浏览器-服务器 B/S 浏览的 浏览器和服务器之间的交互,形成上网B/S模式 对于HTML传到服务器  交给服务器软件(IIS)  服务器软件直接读取静态页面代码,然后返回浏览器 对于ASPX传达服务器  交给服务器软件(IIS)   IIS发现自己处理不了aspx的文件,就去映射表根据后缀名里找到响应的处理程序(isapi,服务器扩展程序) 问题:IIS如何调用可扩展程

burpsuite的基础应用-暴力破解

登陆某一站点http://www.XXXX.cn/login.php其注册页面如下 1.开启Proxy抓包,随机(猜想)尝试用户名密码,,显示如下 2.send-to-intruder,intruder-positions,去掉多余的加载字典位置,auto$密码用户名 Attack type-Battering(一个字典同时匹配两个加载位置) 3.Payload Set-type-rumtime file(选择加载自己的字典),payload option 加载自己的字典         (英文

ASP.NET基础学习未整理随笔

利用新建网站添加的项目可以改完代码直接刷新就行 提交到服务程序的表单一定要具有name.<input type="hidden"value="true"name="ispostback"/>先是要求服务器读取我的请求,然后再相应提交是将内容发给服务器请求响应然后进行返回值的处理string content=content.request["name"];context.response.write(content)

Centos 7安装Fail2ban防御暴力破解密码(配合FirewallD)

fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则表达式匹配)执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽).比如有人在试探你的SSH.SMTP.FTP密码,只要达到你预设的次数,fail2ban就会调用防火墙屏蔽这个IP,而且可以发送e-mail通知系统管理员. 安装EPEL源yum -y install epel-release.noarch 安装支持firewalld的fail2banyum -y install fail2ban-firewalld fail2ban-s

linux 防止ssh暴力破解密码

收集 /var/log/secure 里面的信息,若是某个IP 链接次数超过一定次数 ,则把此ip记录到/etc/hosts.deny里面 #!/bin/bash #Denyhosts SHELL SCRIPT #2013-6-24 cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"=" $1;}' >/root/bin/Denyhosts.txt DEFINE="

hosts.deny hosts.allow防止ssh暴力破解密码

在/etc/hosts.allow输入   (其中192.110.162.6是你要允许登陆ssh的ip,或者是一个网段192.110.162.0/24 表示192.110.162.1到192.110.162.255)   sshd:192.110.162.6:allow        在/etc/hosts.deny输入(表示除了上面允许的,其他的ip   都拒绝登陆ssh)   sshd:ALL

利用Python自动生成暴力破解的字典

Python是一款非常强大的语言.用于测试时它非常有效,因此Python越来越受到欢迎. 因此,在此次教程中我将聊一聊如何在Python中生成字典,并将它用于任何你想要的用途. 前提要求 1,Python 2.7(对于Python 3.x的版本基本相同,你只需要做一些微小调整) 2,Peace of mine(作者开的一个玩笑,这是一首歌名) 如果你用virtualenv搭建Python开发环境,请确保已经安装了itertools.因为我们将会用到itertools生成字典.我们将一步一步地演示

Wordpress xmlrpc.php暴力破解漏洞

Wordpress xmlrpc.php暴力破解漏洞 wordpress是很流行的开源博客,它提供远程发布文章的方法,就是使用跟路径的xmlrpc.php这个文件,最近爆出xmlrpc漏洞,漏洞原理是通过xmlrpc进行认证,即使认证失败,也不会被Wordpress安装的安全插件记录,所以不会触发密码输错N次被锁定的情况.因此就可能被暴力破解,如果密码又是弱口令的话,就相当危险了.最简单的解决办法,就是删除xmlrpc.php这个文件.闲来无事,用java写了暴力破解的脚本,其实就是拿着各种用户