管理员界面可以出现在应用程序或应用程序服务器上,可以让某些特定的用户在站点上进行特殊活动。进行渗透测试的时候,可以看看在未经授权的情况下标准用户是否可以越权。
一个应用程序可能需要管理员界面才能使特权用户访问来更改站点功能。此类型的功能可能包括:
1.用户账号设置
2.网站设计与布局
3.数据处理
4.配置更改
在很多情况下,界面可能没有足够的权限来保护它们免受攻击。渗透测试是为了发现这些管理员界面并访问针对特权用户的功能。
黑盒测试:
以下方法描述了可用于测试管理接口是否存在的向量。这些技术也可用于测试包括提权在内的相关问题,并在本指南的其他地方进行了描述。
1.目录和文件枚举。管理界面可能存在,但测试人员看不到。尝试猜测管理界面其实很简单只需在网站后面加/admin或/administrator等。或者在某些情况下,可以使用GOOGLE DORKS(Kali有)几秒钟内显示出来。
2.有许多工具可以执行服务器内容的暴力破解,有关更多信息,可以等后面的更新。测试人员可能会慢慢找出包含管理页面的文件名。强制浏览到标识的页面可以提供对界面的访问。
3.源代码中的注释和链接。许多站点使用为所有用户加载的通用代码。通过检查发给客户端的信息,可以发现指向管理员功能的链接并进行检查。
4.查看服务器和应用程序文件。如果应用程序服务器或应用是默认配置部署的话,则可以使用配置或帮助文档中描述的信息来访问管理界面。如果找到管理界面并且需要登陆密码的话,可以查看默认密码列表。
5.公开课用的信息许多应用程序(比如word press)具有默认的管理界面
6.备用服务器端口。可以在主机上与主应用程序不同的端口上看到管理界面。比如,经常可以在端口8080上看到Apache Tomcat的管理界面
7.参数篡改。启用管理员功能可能需要GET/POST参数或者是cooke变量。造成这种情况的线索包括隐藏字段的存在,比如:
<input type="hidden" name="admin" value="no">
或者是cookie设置成:
Cookie: session_cookie; useradmin=0
一旦发现管理员界面,可以将上述技术的组合用于尝试绕过身份验证。如果失败,可以尝试暴力破解。在这种情况下,如果存在这种功能,那么测试人员应意思到可能会导致管理账户锁定。
有时候管理人员应该对应用程序组件进行更详细的检查,以确保加固(即通过使用IP过滤或其它组件,大部分人无法访问管理员界面),并在适当的情况下验证所有组件。而且要检查下源代码,确保授权和身份验证模型可以确保普通用户和站点管理员之间明确的职责分离。
而且应该要检查普通用户和管理员用户之间共享的用户界面功能,确保这些组件不存在信息泄露。
每个WEB框架可能都有其自己的管理员默认页面或路径:
WebSphere:
/admin
/admin-authz.xml
/admin.conf
/admin.passwd
/admin/*
/admin/logon.jsp
/admin/secure/logon.jsp
PHP:
/phpinfo
/phpmyadmin/
/phpMyAdmin/
/mysqladmin/
/MySQLadmin
/MySQLAdmin
/login.php
/logon.php
/xmlrpc.php
/dbadmin
FrontPage:
/admin.dll
/admin.exe
/administrators.pwd
/author.dll
/author.exe
/author.log
/authors.pwd
/cgi-bin
WebLogic:
/AdminCaptureRootCA
/AdminClients
/AdminConnections
/AdminEvents
/AdminJDBC
/AdminLicense
/AdminMain
/AdminProps
/AdminRealm
/AdminThreads
WordPress:
wp-admin/
wp-admin/about.php
wp-admin/admin-ajax.php
wp-admin/admin-db.php
wp-admin/admin-footer.php
wp-admin/admin-functions.php
wp-admin/admin-header.php
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
奖励系统 | 100.00 | 0 | 2020-08-31 21:09:28 | 投稿满 10 赞奖励 |
奖励系统 | 50.00 | 0 | 2020-08-31 11:11:02 | 投稿满 5 赞奖励 |
打赏我,让我更有动力~
© 2016 - 2023 掌控者 All Rights Reserved.