当前位置:首页 » 网页前端 » hcl模拟登陆web
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

hcl模拟登陆web

发布时间: 2023-06-04 15:24:52

㈠ webmagic 怎么模拟登陆

webmagic模拟登录方案:方案一:模拟浏览器登录,用代码模拟表单填写,然后获取登陆后的信息,用apache的“HttpClients”进行信息保存。不需要考虑cookie失效问题。

方案二:直接拿去cookie信息,进行设置。可能会用时间限制,超过一定时间就不能再使用了,需要重新设置。
方案一实现:

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107

<code>import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.message.BasicNameValuePair;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

import com.wgyscsf.utils.HttpUtils;

public class SimulateLoginPolicy1 {
static boolean result = false;
public static void main(String[] args) {

loginCsdnPager();

try {
loginedPager();
} catch (ClientProtocolException e) {

e.printStackTrace();
} catch (IOException e) {

e.printStackTrace();
}
}

private static void loginedPager() throws IOException,
ClientProtocolException {

HttpUriRequest httpUriRequest = new HttpPost(
"http://blog.csdn.net/wgyscsf");

httpUriRequest
.setHeader("Accept",
"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
httpUriRequest.setHeader("Accept-Encoding", "gzip,deflate,sdch");
httpUriRequest.setHeader("Accept-Language", "zh-CN,zh;q=0.8");
httpUriRequest.setHeader("Connection", "keep-alive");
// 模拟浏览器,否则CSDN服务器限制访问
httpUriRequest
.setHeader(
"User-Agent",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36");

HttpResponse response = HttpUtils.httpClient.execute(httpUriRequest);
InputStream content = response.getEntity().getContent();

BufferedReader br = new BufferedReader(new InputStreamReader(content));
String line = "";
String result = "";
while ((line = br.readLine()) != null) {
result += line;
}
br.close();

System.out.println(result);
}

/**
* 登录页面
*/
private static void loginCsdnPager() {
String html = HttpUtils
.sendGet("https://passport.csdn.net/account/login?ref=toolbar");// 这个是登录的页面
Document doc = Jsoup.parse(html);
// 获取表单所在的节点
Element form = doc.select(".user-pass").get(0);

String lt = form.select("input[name=lt]").get(0).val();
String execution = form.select("input[name=execution]").get(0).val();
String _eventId = form.select("input[name=_eventId]").get(0).val();

List<namevaluepair> nvps = new ArrayList<namevaluepair>();
nvps.add(new BasicNameValuePair("username", "[email protected]"));
nvps.add(new BasicNameValuePair("password", "wanggaoyuan"));
nvps.add(new BasicNameValuePair("lt", lt));
nvps.add(new BasicNameValuePair("execution", execution));
nvps.add(new BasicNameValuePair("_eventId", _eventId));

String ret = HttpUtils.sendPost(
"https://passport.csdn.net/account/login?ref=toolbar", nvps);

if (ret.indexOf("redirect_back") > -1) {
System.out.println("登陆成功");
result = true;
} else if (ret.indexOf("登录太频繁") > -1) {
System.out.println("登录太频繁,请稍后再试。。。。。");
return;
} else {
System.out.println("登陆失败。");
return;
}
}
}</namevaluepair></namevaluepair></code>

方案二:使用浏览器的开发者工具将cookie手动加进去

㈡ H3C MSR-30-20路由器登陆WEB界面

登录Web网管
在确认设备支持Web网管后,先要对设备进行一系列的配置,才能登录Web网管。登录Web网管的全过程如下。
(1) 连接设备和PC 通过Console口搭建本地配置环境。如图1-2所示,只需将PC机(或终端)的串口通过配置电缆与设备的Console口连接。 通过Console口搭建本地配置环境

(2) 在PC上配置终端仿真程序 在PC机上运行终端仿真程序(如Windows 3.X的Terminal、Windows 9X的超级终端等)。 设置终端通信参数:波特率为9600bps、数据位为8、奇偶校验为无、停止位为1、数据流控制为无。

(3) 进入设备的命令行接口
加电启动设备,PC终端上将显示设备的自检信息。自检结束后键入<Enter>,进入设备的命令行接口。
(4) 设备的基本配置
# 配置设备接口的IP地址。
<Sysname> system-view
[Sysname] interface ethernet 0/0 ←进入接口试图
[Sysname-Ethernet0/0] ip address 10.153.17.82 255.255.255.0 ←配置接口的IP地址为10.153.17.82
[Sysname-Ethernet0/0] quit ←退出接口试图
# 添加设备的Telnet用户,用户级别设为3(管理级用户)。
[Sysname] local-user admin ←设置Telnet用户名为admin
[Sysname-luser-admin] service-type telnet level 3 ←设置级别3 (-----如果此时报错,则按#2添加Telnet用户)
[Sysname-luser-admin] password simple admin ←设置用户admin的密码为admin
[Sysname-luser-admin]ip http enable ←开启http功能
[Sysname-luser-admin] save ←保存配置

#2 添加设备的Telnet用户,用户级别设为3(管理级用户)。
[Sysname] local-user admin ←设置Telnet用户名为admin
[Sysname-luser-admin]password cipher admin ←设置用户admin的密码为admin
[Sysname-luser-admin]authorization-attribute level 3 ←设置级别3
[Sysname-luser-admin]service-type telnet
[Sysname-luser-admin]ip http enable ←开启http功能
[Sysname-luser-admin] save ←保存配置

(5) 登录Web网管
在与设备路由可达的Web网管终端(比如PC)上启动浏览器,访问http://10.153.17.82即可进入Web网管登陆页面。在Web网管登录页面的右上角有切换Web网管语言的链接。目前Web网管支持两种语言:中文和English。 输入用户名admin和密码admin,单击<登录>按钮即可进入Web网管并进行管理操作。

㈢ web渗透测试之攻破登录页面

当我们在做渗透测试时,无论厂商项目还是src众测项目,都会遇到给一堆登录系统的URL,然后让我们自己去测,能不能进去全看天的状况,本文将讲一下怎么突破这种封闭的web系统,从而进行更深层次的渗透 ,学完后你会发现,其实你就是系统管理员。

如果能直接绕过登录系统界面,后面的就比较好做了,目前常见的登录系统绕过方法有:

大部分情况下,系统登录页面都不存在xss,目录遍历,SQL注入等漏洞,这时候最常用的方法就是爆破和猜解登录口令,密码猜解最关键的就是字典要高效准确

https:// down.52pojie.cn/Tools/N etwork_Analyzer/Burp_Suite_Pro_v1.7.31_Loader_Keygen.zip

2.准确的用户名,密码字典是高效破解的重中之重 ,一般都是指定几个常见用户名 ,尝试 top500,top1000进行爆破 字典不必要太大,最重要的是针对性要强 ,下面是top1000:

链接: https:// pan..com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

3.如果还是不能猜解成功,就要根据目标信息用字典生成器构造针对性的字典来猜解了,推 荐几个比较好的字典生成工具

pydictor:

LandGrey/pydictor

crunch:

crunch - wordlist generator

Cewl:

digininja/CeWL

Cupp:

Mebus/cupp

因为管理员权限较高,通常我都会先进行管理员口令的猜解,总结了一些常见的管理员用户名字典

<u>链接:</u> <u> https:// pan..com/s/1sOD1-u whnStaw_LfMOf-sQ </u><u>密码: 3yqe</u>

用此用户名字典,再加上弱口令top1000,同时爆破系统管理员用户名密码

链接: https:// pan..com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

常见的普通用户用户名是姓名拼音,总结了普通用户字典

TOP3000姓名

<u>链接:</u> <u> https:// pan..com/s/1qN9kCF tymP4ugvu3FFkKbA </u><u>密码: hkzp</u>

TOP10w姓名

https:// github.com/rootphantome r/Blasting_dictionary/blob/master/top10W.txt

通常可以选择几个弱口令密码,比如:123456,123abc,111111,然后配合top10w来猜解登陆口令,一些初始化的默认密码也很简单,如果能找到配合top10w通常也能爆出登录口令

现在的业务系统口令传输到后端前都会进行加密处理 ,web常见的加密方式有 md5 加密、sha1 加密、RSA 加密,在此基础上总结了两种破解方式:

1.利用burpsuite的payload processing功能,把字典按照加密方式先加密再发包

2.用字典生成工具生成加密好的字典,然后burp直接加载加密字典

这里推荐的字典生成工具是pydictor,encode功能内置了多种加密算法,调用handler工具直接加密自己的明文字典

如果登录系统设置了IP地址白名单,我们可以通过下面的几个http头字段伪造IP地址,用burp抓包后将下面的某个http头字段加入数据包发送到服务器

<pre class="prettyprint hljs css" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto;">Client-Ip: 127.0.0.1
X-Client-IP: 127.0.0.1
X-Real-IP: 127.0.0.1
True-Client-IP: 127.0.0.1
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-Forwarded-Host: 127.0.0.1</pre>

如果在系统登陆界面加上了验证码,那么上面的方法基本上就都失效了,那有什么方法可以绕过验证呢

1.图形验证码不刷新

在一段时间内只要不刷新页面,无论登录失败多少次都不刷新验证码,这个时候就可以使用同一个验证码根据上面的方式进行暴力破解

2.验证码失效

不管在验证码表单输入什么样的数据,都会判断通过,但这种情况很少见

3.图形验证码可被识别,抓包直接可以获得验证码

很多网站的验证码都可以在请求数据包中找到,或者隐藏在request的cookie中,response的源码中,可以利用burpsuite的macros来匹配response中的相应数据,具体的爆破方法参见下文:

burpsuite爆破密码(含验证码) - CSDN博客

4.图形验证码参数直接绕过

对于request数据: user=admin&pass=1234&vcode=brln,有两种绕过方法:

一是验证码空值绕过,改成 user=admin&pass=1234&vcode=;

一是直接删除验证码参数,改成 user=admin&pass=1234。

5.万能验证码

渗透测试的过程中,有时候会出现这种情况,系统存在一个万能验证码,如0000、9999,只要输入万能验证码,就可以无视验证码进行暴力破解。

6. 验证码可被识别

有些图形验证码加入的像素线条过于简单,使用图形验证码识别工具可以识别出每次更换的验证码,在平常的漏洞挖掘过程中,如果我们发现登录的验证码非常简单且易于识别,那我们就可以尝试使用自动化工具来进行登录破解了,如 PKAV 的 HTTP Fuzzer

7.使用机器学习算法识别验证码

主要是对特定网站的图形验证码训练识别模型,达到一定的准确率就可以调用进行模拟提交图形验证码的值了。可参考以下三篇文章进行学习:

使用KNN算法识别验证码:

http:// nlao.github.io/2016/0 9/22/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8K%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/

卷积神经网络识别验证码

http:// nlao.github.io/2016/0 9/23/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/

使用 TensorFlow 训练验证码

http:// nlao.github.io/2017/0 4/10/%E4%BD%BF%E7%94%A8TensorFlow%E8%AE%AD%E7%BB%83Weibo-cn%E9%AA%8C%E8%AF%81%E7%A0%81/

对于网站要求输入手机号,接收手机短信并校验短信验证码是否正确进行登录的系统,突破的主要思路有:

1.短信验证码生命期限内可暴力枚举

在验证码还未过期的时间段内,可枚举全部的纯四位数字、六位数字等较简单的短信验证码;

2. 短信验证码在数据包中返回

和图形验证码一样,在response中可以直接获取到短信验证码。

3. 修改请求数据包参数或 Cookie 值绕过

比如有 post 数据包:mobile=12435437658&userid=123456, Cookie中有:codetype=1

在特定步骤,修改 mobile=自己的手机号,自己手机就可以收到别人的验证码,后面再用别人的手机号和接收到的验证码登录;

修改 Cookie 中可疑的参数和值,进行绕过,比如上面修改 codetype=0;

4. 修改返回包绕过

提交错误的短信验证码,返回包中有: status=false,在Burpsuite中修改为 status=true,即可绕过前端判断,成功进入系统。具体还要结合实际的场景,灵活操作。

web系统登陆页面看似铜墙铁壁,但其实只要梳理一遍思路,右键看过每一行网站源码,弄懂每个参数的意义,查看每一个js文件,就会发现其实自己就是系统管理员,只是我把密码忘了,现在我要用上面的方式进入。

㈣ web上网认证如何实现自动登陆

本地存有一个Iskey的布尔值,保存的是当前的这个账号之前在本机登陆,并且选择了保存用户信息的操作,让它为真,进入登录界面之前判断这个布尔值就行