这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步。前文分享了微软证书漏洞(CVE-2020-0601),并详细讲解了Windows验证机制、可执行文件签名复现及HTTPS劫持。本文将分享另一个主题——Cracer教程,第一篇文章将详细讲解安全术语、Web渗透流程和Windows基础、注册表及黑客常用DOS命令。基础性文章,希望对您有所帮助。
在这里,我非常感谢Fox老师提供的资源,也感谢Cracer的老师们辛勤劳作。Cracer是非常经典的安全教程,课程体系比较全面,内容如下图所示。作者会从零学习,结合自己的认识及前文进行讲解,希望您喜欢!该教程适合零基础的初学者,希望这篇基础文章对您有所帮助,更希望大家提高安全意识,学会相关防范,也欢迎大家讨论。
作者作为网络安全的小白,分享一些自学基础教程给大家,主要是关于安全工具和实践操作的在线笔记,希望您们喜欢。同时,更希望您能与我一起操作和进步,后续将深入学习网络安全和系统安全知识并分享相关实验。总之,希望该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!如果文章对您有帮助,将是我创作的最大动力,点赞、评论、私聊均可,一起加油喔~
PS:本文参考了安全网站和参考文献中的文章(详见参考文献),并结合自己的经验和实践进行撰写,也推荐大家阅读参考文献。
下载地址:https://github.com/eastmountyxz/NetworkSecuritySelf-study
前文学习:
[网络安全自学篇] 一.入门笔记之看雪Web安全学习及异或解密示例
[网络安全自学篇] 二.Chrome浏览器保留密码功能渗透解析及登录加密入门笔记
[网络安全自学篇] 三.Burp Suite工具安装配置、Proxy基础用法及暴库示例
[网络安全自学篇] 四.实验吧CTF实战之WEB渗透和隐写术解密
[网络安全自学篇] 五.IDA Pro反汇编工具初识及逆向工程解密实战
[网络安全自学篇] 六.OllyDbg动态分析工具基础用法及Crakeme逆向
[网络安全自学篇] 七.快手视频下载之Chrome浏览器Network分析及Python爬虫探讨
[网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster工具
[网络安全自学篇] 九.社会工程学之基础概念、IP获取、IP物理定位、文件属性
[网络安全自学篇] 十.论文之基于机器学习算法的主机恶意代码
[网络安全自学篇] 十一.虚拟机VMware+Kali安装入门及Sqlmap基本用法
[网络安全自学篇] 十二.Wireshark安装入门及抓取网站用户名密码(一)
[网络安全自学篇] 十三.Wireshark抓包原理(ARP劫持、MAC泛洪)及数据流追踪和图像抓取(二)
[网络安全自学篇] 十四.Python攻防之基础常识、正则表达式、Web编程和套接字通信(一)
[网络安全自学篇] 十五.Python攻防之多线程、C段扫描和数据库编程(二)
[网络安全自学篇] 十六.Python攻防之弱口令、自定义字典生成及网站暴库防护
[网络安全自学篇] 十七.Python攻防之构建Web目录扫描器及ip代理池(四)
[网络安全自学篇] 十八.XSS跨站脚本攻击原理及代码攻防演示(一)
[网络安全自学篇] 十九.Powershell基础入门及常见用法(一)
[网络安全自学篇] 二十.Powershell基础入门及常见用法(二)
[网络安全自学篇] 二十一.GeekPwn极客大赛之安全攻防技术总结及ShowTime
[网络安全自学篇] 二十二.Web渗透之网站信息、域名信息、端口信息、敏感信息及指纹信息收集
[网络安全自学篇] 二十三.基于机器学习的恶意请求识别及安全领域中的机器学习
[网络安全自学篇] 二十四.基于机器学习的恶意代码识别及人工智能中的恶意代码检测
[网络安全自学篇] 二十五.Web安全学习路线及木马、病毒和防御初探
[网络安全自学篇] 二十六.Shodan搜索引擎详解及Python命令行调用
[网络安全自学篇] 二十七.Sqlmap基础用法、CTF实战及请求参数设置(一)
[网络安全自学篇] 二十八.文件上传漏洞和Caidao入门及防御原理(一)
[网络安全自学篇] 二十九.文件上传漏洞和IIS6.0解析漏洞及防御原理(二)
[网络安全自学篇] 三十.文件上传漏洞、编辑器漏洞和IIS高版本漏洞及防御(三)
[网络安全自学篇] 三十一.文件上传漏洞之Upload-labs靶场及CTF题目01-10(四)
[网络安全自学篇] 三十二.文件上传漏洞之Upload-labs靶场及CTF题目11-20(五)
[网络安全自学篇] 三十三.文件上传漏洞之绕狗一句话原理和绕过安全狗(六)
[网络安全自学篇] 三十四.Windows系统漏洞之5次Shift漏洞启动计算机
[网络安全自学篇] 三十五.恶意代码攻击溯源及恶意样本分析
[网络安全自学篇] 三十六.WinRAR漏洞复现(CVE-2018-20250)及恶意软件自启动劫持
[网络安全自学篇] 三十七.Web渗透提高班之hack the box在线靶场注册及入门知识
[网络安全自学篇] 三十八.hack the box渗透之BurpSuite和Hydra密码爆破及Python加密Post请求(二)
[网络安全自学篇] 三十九.hack the box渗透之DirBuster扫描路径及Sqlmap高级注入用法(三)
[网络安全自学篇] 四十.phpMyAdmin 4.8.1后台文件包含漏洞复现及详解(CVE-2018-12613)
[网络安全自学篇] 四十一.中间人攻击和ARP欺骗原理详解及漏洞还原
[网络安全自学篇] 四十二.DNS欺骗和钓鱼网站原理详解及漏洞还原
[网络安全自学篇] 四十三.木马原理详解、远程服务器IPC$漏洞及木马植入实验
[网络安全自学篇] 四十四.Windows远程桌面服务漏洞(CVE-2019-0708)复现及详解
[网络安全自学篇] 四十五.病毒详解及批处理病毒制作(自启动、修改密码、定时关机、蓝屏、进程关闭)
[网络安全自学篇] 四十六.微软证书漏洞CVE-2020-0601 (上)Windows验证机制及可执行文件签名复现
[网络安全自学篇] 四十七.微软证书漏洞CVE-2020-0601 (下)Windows证书签名及HTTPS网站劫持
前文欣赏:
[渗透&攻防] 一.从数据库原理学习网络攻防及防止SQL注入
[渗透&攻防] 二.SQL MAP工具从零解读数据库及基础用法
[渗透&攻防] 三.数据库之差异备份及Caidao利器
[渗透&攻防] 四.详解MySQL数据库攻防及Fiddler神器分析数据包
声明:本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。
常用术语包括:
安全分享及漏洞库网站推荐:
安全测试集相关网站推荐:
在线分析或沙箱平台推荐:
安全技术会议推荐:
安全学术会议推荐:
OWASP top 10 测试标准是安全招聘的常见问题,也是渗透测试的经典标准,详见参考文献2。
OWASP(开放式Web应用程序安全项目)的工具、文档、论坛和全球各地分会都是开放的,对所有致力于改进应用程序安全的人士开放,其最具权威的就是“10项最严重的Web 应用程序安全风险列表” ,总结了Web应用程序最可能、最常见、最危险的十大漏洞,是开发、测试、服务、咨询人员应知应会的知识。
- 注入injection:将不安全的命令发送给解析器,产生类似于SQL注入、NoSQL注入、OS注入和LDAP注入的缺陷。攻击者可以构造恶意数据通过注入缺陷的解析器执行没有权限的非预期命令或访问数据。
- 失效的身份认证:通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码、密钥或会话令牌,或者暂时或永久的冒充其他用户的身份。
- 敏感数据泄露:通常敏感信息包括密码、财务数据、医疗数据等,由于Web应用或API未加密或不正确的保护敏感数据,这些数据极易遭到攻击者利用。由于未加密的信息极易遭到破坏和利用,因此我们应该加强对敏感数据的保护,Web应用应该在传输数据、存储数据以及浏览器交互数据时进行加密,保证数据安全。
- 外部实体 XXE:XXE全称为XML External Entity attack,即XML外部实体注入攻击,早期或配置错误的XML处理器评估了XML文件外部实体引用,攻击者可以利用这个漏洞窃取URI文件处理器的内部文件和共享文件、监听内部扫描端口、执行远程代码和实施拒绝服务攻击。
- 失效的访问控制:通过身份验证的用户,可以访问其他用户的相关信息。攻击者可以利用这个漏洞去查看未授权的功能和数据,如访问用户的账户、敏感文件、获取和正常用户相同的权限等。
- 安全配置错误:安全配置错误是比较常见的漏洞,由于操作者的不当配置,导致攻击者可以利用这些配置获取更高的权限,安全配置错误可以发生在各个层面,包含平台、web服务器、应用服务器、数据库、架构和代码。
- 跨站脚本攻击 XSS:当应用程序的网页中包含不受信任的、未经恰当验证、转义的数据,或使用HTML、JavaScript的浏览器API更新现有网页时,就会出现XSS漏洞,跨站脚本攻击是最普遍的Web应用安全漏洞,甚至在某些安全平台都存在XSS漏洞。它会执行攻击者在浏览器中的脚本,并劫持用户会话,破坏网站或用户重定向到恶意站点,使用XSS甚至可以执行拒绝服务攻击。
- 不安全的反序列化:它可以导致远程代码执行、重放攻击、注入攻击或特权升级攻击。
- 使用含有已知漏洞的组件:组件(如库、框架或软件模块)拥有应用程序相同的权限,如果应用程序中含有已知漏洞,攻击者可以利用漏洞获取数据或接管服务器。同时,使用这些组件会破坏应用程序防御,造成各种攻击产生严重的后果。
- 不足的日志记录和监控:这个和等保有一定的关系,不足的日志记录和监控,以及事件响应缺失或无效的集成,使攻击者能够进一步攻击系统、保持持续性的或攻击更多的系统,以及对数据的不当操作。
渗透测试(Penetration test)并没有一个标准的定义,国外一些安全组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。 这个过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这个分析是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。
换句话说,渗透测试是渗透人员在不同的位置(比如内网、外网)利用各种手段对某个特定网络进行测试,以发现和挖掘系统中存在的漏洞,然后输出渗透测试报告,并提交给网络所有者。网络所有者根据渗透人员提供的渗透测试报告,可以清晰知晓系统中存在的安全隐患和问题。
渗透测试流程包括:
安装详见前文 “[网络安全自学篇] 十一.虚拟机VMware+Kali安装入门及Sqlmap基本用法”。
注意,虚拟机有个快照功能可以帮助我们迅速恢复之前的状态。
虚拟机网络配置在右下角位置。
如果想要虚拟机上网,通常我们会选择“Net模式”,让它自动获取IP即可。
也可以设置自定义模式。
如何在虚拟机中搭建网站,让外网能够访问呢?
选择“桥接模式”,直接连接物理网络,复制物理网络连接状态,此时在同一个网段进行访问。这里在虚拟机中搭建一个网站,其虚拟机IP地址为192.168.0.104,如下图所示。
此时物理机通过IP地址可以直接访问该虚拟机中搭建好的网站,注意端口号为99。
那么,又怎么通过外网访问呢?
接着需要配置迅捷网络的路由器,点击“高级用户”->“虚拟服务器”映射IP。设置虚拟服务器,添加一个HTTP协议的服务器,IP地址为192.168.0.104,端口号为99。
此时,当外网访问本机物理IP地址时,就会跳转访问虚拟机中搭建的网站。其本机物理IP地址为182.46.195.40。
外网访问的最终结果如下图所示,也推荐大家搭建网站进行渗透测试。
PS:后续随着教程深入会分享如何搭建网站以及域名解析。
HTTP(明文)和HTTPS(密文)
HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。它是一种详细规定了浏览器和万维网服务器之间互相通信的规则,是万维网交换信息的基础,允许将HTML文档从Web服务器传送到Web浏览器。
HTTP协议是基于TCP/IP协议之上的应用层协议,它是一个客户端和服务器端请求和应答的标准。客户端是终端用户,服务器端是网站。通过使用Web浏览器、网络爬虫或者其它的工具,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求。下图是HTTP协议的原理图,通常包括两部分:
HTTPS(全称Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS在HTTP的基础下加入SSL层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要SSL。HTTPS 存在不同于HTTP的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。如果你足够细心,你会发现现在很多大型互联网网站,如百度、淘宝、腾讯很早就已经把HTTP换成HTTPS了。
响应码
很多目录扫描工具就是通过HTTP响应码来判断页面是否存在。200、302、403、404、500都是常见的响应码。
URL
在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL(Uniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。
URL由三部分组成:资源类型、存放资源的主机域名、资源文件名;也可认为由4部分组成:协议、主机、端口、路径。URL的一般语法格式如下,方括号为可选项。
protocol :// hostname[:port] / path / [parameters][?query]#fragment
例如“www.eastmount.com/admin/index.html”,某些情况下,它是伪静态网页,虽然看似HTML文件,但存在数据库交互。常见的动态网站编写脚本包括:
HTTP Header
HTTP消息头是指在超文本传输协议( Hypertext Transfer Protocol ,HTTP)的请求和响应消息中,协议头部分的那些组件。HTTP消息头用来准确描述正在获取的资源、服务器或者客户端的行为,定义了HTTP事务中的具体操作参数。这里以Python获取消息头为例:
# -*- coding:utf-8 -*-
import urllib
import webbrowser as web
url = "http://www.baidu.com
content = urllib.urlopen(url)
print content.info() #头信息
print content.geturl() #请求url
print content.getcode() #http状态码
#保存网页至本地并通过浏览器打开
open("baidu.html","w").write(content.read())
web.open_new_tab("baidu.html")
该段调用调用urllib.urlopen(url)函数打开百度链接,并输出消息头、url、http状态码等信息,如下图所示。
一方面分析HTTP头对网站渗透非常重要;另一方面它也存在安全隐患,在PHP中通常会使用 $_SERVER[“HTTP_CLIENT_IP”] 或者 $_SERVER[“HTTP_X_FORWARDED_FOR”] 来获取IP。因此,可以通过修改HTTP头中的X-Forwarder-For:、client-ip:来进行攻击。例如:
BurpSuite抓包分析
Burpsuite是用于攻击web应用程序的集成平台,包含了许多工具。Burpsuite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP 消息、持久性、认证、代理、日志、警报。通常利用Burpsuite抓包分析,寻找Web漏洞。
后续作者会结合Cracer教程深入讲解,也推荐大家阅读作者之前的文章:
[网络安全自学篇] 三.Burp Suite工具安装配置、Proxy基础用法及暴库示例
GET传参和POST传参区别
HTTP请求方法还包括:GET、POST、OPTIONS、PUT、MOVE、DELETE、TRACE。下图采用BurpSuite抓取POST请求参数。
注意,错误配置HTTP方法可能导致的安全事件。服务器存在允许PUT方式和MOVE方式,这时我们可以通过PUT方式传入一个webshell.txt,然后通过MOVE方式结合解析漏洞很快地拿到网站的Webshell。
WAF
Web应用防护系统(Web Application Firewall,简称 WAF)也称为:=网站应用级入侵防御系统。Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
推荐作者前文:[网络安全自学篇] 三十三.文件上传漏洞之绕狗一句话原理和绕过安全狗(六)
防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。
防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。
安全狗以SECaaS安全即为用户提供一站式的云安全产品与服务,包括(云)主机安全、WEB应用安全、网站防篡改、抗DDoS云服务、安全大数据态势感知等。其基本功能包括:
绕狗一句话木马:
$a='b';
$$a='assert';
$b($_POST[fox]);
?>
常见网站搭建包括ASP网站搭建、Java网站SSH搭建、PHP网站搭建 ,比如phpStudy、WAMP/LAMP。参考作者文章:
phpStudy搭建Upload-labs靶场及CTF题
PHP XAMPP配置PHP环境和Apache80端口被占用解决方案
它的优势是可以切换各种PHP版本。
IIS网站搭建也是非常基础的知识,这里推荐大家阅读 “[网络安全自学篇] 四十二.DNS欺骗和钓鱼网站原理详解及漏洞还原” 文章实验部分。
一个聪明的安全工程师,是需要熟悉常见的CMS框架的。
内容管理系统(content management system,CMS)是一种位于WEB 前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。这里指的“内容”可能包括文件、表格、图片、数据库中的数据甚至视频等一切你想要发布到Internet、Intranet以及Extranet网站的信息。
常见CMS如下:
写到这里,上部分网络安全基础知识就介绍完毕,接下来将分享Windows基础知识及DOS命令。上部分主要的知识点包括:
该部分主要分为三部分内容:
熟悉系统目录方便我们进行渗透操作。包括系统自身创建的目录、程序或人为创建的目录。比较重要的几个目录包括Windows、Program files/Program files(x86)、ProgramData、用户等。
(1) Windows
Windows系统目录指操作系统的主要文件存放的目录。目录中的文件直接影响到系统是否正常工作,了解这些目录的功能,对使用系统会有很大的帮助。
其中的核心目录包括System32,该文件夹下config/SAM是存储加密过的系统帐号的密码文件。该文件被系统占用无法打开,但PE系统下能操作管理员密码,也可以通过lc5、彩虹表、PwDum7.exe获取。
PwDum7.exe软件读取SAM文件,此时为密文。
pass.exe软件获取密码“123.com”,必须管理员权限才能读取。
另一个核心文件为Windows\System32\drivers\etc\hosts文件,相当于本地的小型DNS,定义了域名和IP。
打开如下图所示:
注意,hosts文件的优先级高于DNS服务器。
如果我们直接ping百度,它会返回百度的真实IP地址(115.239.210.27),如下图所示。
但如果在hosts文件中增加域名解析记录,则它会优先ping本地hosts文件中的记录(1.1.1.1)。如果你的hosts文件被污染,则就是DNS欺骗或钓鱼网站,
详细推荐作者前文:[网络安全自学篇] 四十二.DNS欺骗和钓鱼网站原理详解及漏洞还原。
域名解析(Domain Name Resolution) 是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。
例如,当企业员工电脑访问该购物网站时,会去DNS服务器进行解析;然后找到地址2.2.2.2,并返回给企业员工电脑;最后访问该购物Web服务器,假设是IIS,它会将购物网站的首页返回给你的浏览器。
(2) Program files/Program files(x86)
操作系统各种程序默认安装到的目录,包括32位和64位。其文件夹包括:Common Files(提供程序中的一些共享配置文件)、 Internet Explorer(网络浏览器)、NetMeeting(网络聊天软件)、Microsoft Office(办公软件集合)、Windows Media Player(媒体播放器)等。
比如腾讯QQ、微信通讯软件。
(3) Perflogs
它是Windows系统的日志信息,如磁盘扫描错误信息、测试信息等,该目录不建议删除,删除反而会重新生成并降低系统速度。
(4) ProgramData
C盘的一个系统文件夹(隐藏),它是公用的被创建文件夹或文件存放的地方,由创建者完整控制,程序运行或启动生成的临时文件通常存放该目录,电脑病毒也比较喜欢感染该目录。
(5) 用户
存放系统账号相关的文件或文件夹。在Web渗透中该目录有什么用呢?当我们提取某个服务器后,通常会去查询该目录中存在的用户名,该目录是信息深入收集所必须查找的目录,包括桌面、我的文档等敏感信息或文件。
比如QQ的文件接收信息。如果存在敏感文件,是不是就会泄露了相关信息。
服务是一种应用程序类型,它在后台运行。服务应用程序通常可以在本地和通过网络为用户提供一些功能,例如客户端/服务器应用程序、Web服务器、数据库服务器以及其他基于服务器的应用程序。如果某个服务未打开,你就不能享受对应这个服务的功能。
在运行中输入“services.msc”打开服务。
显示如下图所示,可以打开描述查看具体信息。
比如虚拟机的网络服务,需要打开才能让虚拟机连接上网。
除了计算机内置的服务,我们软件也需要注册相关的服务,包括后面要讲得metasploit安装后面的软件,也需要安装相关的服务。
服务决定了计算机的一些功能是否被启用,不同的服务对应的功能不同,通过计算机提供的服务可以有效地实现资源共享。常见的服务包括:
服务是可以设置“自动”(启动)、“手动”、“禁用”三种类型,后面用到时会具体讲解。
在CMD中输入 “netstat -an” 显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接(IP+端口)正在运作。
Cracer安全工具包提供了各种工具,推荐大家尝试学习。
比如利用Hydra工具进行Telnet远程服务器密码爆破,如下图所示,也推荐大家阅读前面作者的文章 “三十八.hack the box渗透之BurpSuite和Hydra密码爆破及Python加密Post请求(二)”。如果想提高爆破成功率,字典和社工(目标生日、姓名)非常重要。
(1) 端口的作用
我们知道,一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机是怎么区分不同的网络服务呢?显然不能只靠IP地址,因为IP地址与网络服务的关系是一对多的关系,实际上是通过“IP地址+端口号”来区分不同的服务的。
需要注意的是,端口并不是一一对应的。比如你的电脑作为客户机访问一台WWW服务器时,WWW服务器使用“80”端口与你的电脑通信,但你的电脑则可能使用“3456”这样的端口。如下图所示:
(2) 端口的分类
端口共1-65535号,知名端口范围从0到1023,这些端口号一般固定分配给一些服务,大家尽量不要使用。比如21端口分配给FTP服务,25端号分配给SMTP邮件传输协议服务,80端口分配给HTTP服务,135端口分配给RPC远程过程调用服务等等。
动态端口的范围从1024到65535,这些端口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配一个供该程序使用。比如1024端口就是分配给第一个向系统发出申请的程序,在关闭程序进程后,就会释放所占用的端口号。注意,端口冲突就不能正常工作。
同时,动态端口号也常常被病毒木马程序所利用,如冰河默认连接端口号是7626、WAY 2.4连接端口号是8011、Netspy 3.0连接端口号是7306、YAI病毒连接端口号是1024等等。
(3) 常见的端口
端口号 | 含义 |
---|---|
21 | FTP文件传输协议代理服务器常用端口号 |
22 | SSH安全登录、SCP文件传输、端口重定向端口号 |
23 | Telnet远程登录协议代理服务器常用端口号 |
25 | SMTP Simple Mail Transfer Protocol (E-mail) 端口号(木马Antigen、Heabu Coceda、WinPC等开放该端口) |
53 | DNS域名解析服务端口号 |
80/8080/3128/8081/9080 | HTTP协议代理服务器常用端口号 |
110 | POP3“邮局协议版本3”使用的端口号 |
443 | HTTPS加密的超文本传输服务端口号 |
1080 | SOCKS代理协议服务器常用端口号 |
1433 | MSSQL SERVER数据库默认端口号 |
1521 | Oracle数据库服务端口号 |
1863 | MSN Messenger的文件传输功能所使用的端口号 |
3306 | MYSQL默认端口号 |
3389 | Microsoft RDP微软远程桌面使用的端口号 |
5631 | Symantec pcAnywhere远程控制数据传输时使用的端口号 |
5632 | Symantec pcAnywhere 主控端扫描被控端时使用的端口号 |
4000/8000 | 腾讯QQ端口号 |
(4)黑客通过端口可以干什么
注册表(Registry,繁体中文版Windows称之为登录档)是微软Windows系统中的一个重要的数据库,用于存储系统和应用程序的设置信息。早在Windows 3.0退出OLE技术的时候,注册表就已经出现。随后推出的Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Microsoft Windows 95开始,注册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用至今。在安全领域,注册表是非常强大且常用的。
(1) 打开注册表
运行中输入“regedit”。
打开如下图所示,包括五个根键,每个键值控制的内容不一样。
(2) 注册表的作用
注册表是Windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着Windows的启动、硬件驱动程序的装载以及一些Windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。
如果我们的电脑中了木马,怎么清除对应的木马呢?
第一种方法,开机自启动是植入木马常用的操作,进行查找及清除。
在运行中输入“msconfig”,可以查看开机自启动程序和服务,如下图所示,图中“计算器”就是之前另一篇文章植入的“木马”。当木马设置成开机自启动服务时,是非常可怕的一件事,参考作者前文。
[网络安全自学篇] 三十六.WinRAR漏洞复现(CVE-2018-20250)及恶意软件自启动劫持
[网络安全自学篇] 四十三.木马原理详解、远程服务器IPC$漏洞及木马植入实验
如果电脑被植入木马,我们可以通过其位置找到对应的木马并清除,下图显示的是VBS木马。
如果程序未放置在开机自启动的位置,而是插入注册表中,又怎么清除呢?
第二种方法,通过注册表查找并清除木马。
通过查找注册表的内容,然后再获取键值的位置并进行清除。
第三种方法,通过网络远程连接查询和外部交互的IP地址和端口。
输入“netstat -an” 或 “netstat -o”,显示如下图所示。如果每当我们开机,它就会自动连接远程某个地址和端口,说明我们中了木马且肉鸡自动上线。
(3) 注册表结构
(4) 入侵中常用的注册表
增加的C盘如下图所示,并且能访问或修改相关的文件。
C:\Users\xiuzhang>net user
\\DESKTOP-KUPRQ86 的用户帐户
-------------------------------------------------------------------------------
Administrator DefaultAccount Guest
WDAGUtilityAccount xiuzhang
命令成功完成。
C:\Users\xiuzhang>net user xiuzhang
用户名 xiuzhang
全名
注释
用户的注释
国家/地区代码 000 (系统默认值)
帐户启用 Yes
帐户到期 从不
上次设置密码 2020/2/3 12:28:17
密码到期 从不
密码可更改 2020/2/3 12:28:17
需要密码 No
用户可以更改密码 Yes
允许的工作站 All
登录脚本
用户配置文件
主目录
上次登录 2020/2/20 11:33:08
可允许的登录小时数 All
本地组成员 *Administrators
全局组成员 *None
命令成功完成。
C:\Users\xiuzhang>
-net localgroup:查看本地组。
请大家注意,“Remote Desktop Users”为远程桌面组,绕过安全狗可能会遇到该组。下图展示了将其添加到远程桌面组的代码“net localgroup “remote desktop users” xiao /add”。
服务器提权不建议大家创建用户登录,尽量避免管理员看到新增用户,可以启用guest并创建密码,再增加到管理员组或远程桌面组。相对比直接创建用户更隐蔽,最后会进行还原与痕迹清除。所以,安全防火墙和日志是非常重要的安全保护数段。
AT命令已启用,改用schtasks.exe。
批处理文件是DOS命令的组合文件,写在批处理文件的命令会被逐一执行,后缀名为“.bat”。比如创建一个批处理文件“x.bat”,包含3条DOS命令。
DIR查看已经已经创建成功。
本地C盘的批处理文件“x.bat”如果被执行或加载到自启动项,则会执行该命令。
可以看到,创建的管理员用户“cr”已经存在,后续会执行关机。
Powershell在安全领域也是非常重要的技能,推荐大家阅读作者两篇前文。
[网络安全自学篇] 十九.Powershell基础入门及常见用法(一)
[网络安全自学篇] 二十.Powershell基础入门及常见用法(二)
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。它引入了许多非常有用的新概念,从而进一步扩展了您在 Windows 命令提示符和 Windows Script Host 环境中获得的知识和创建的脚本。
写到这里,Cracer学习视频第一篇文章就介绍完毕,主要包括两部分内容:
希望这系列文章对您有所帮助,真的感觉自己技术好菜,要学的知识好多。这是第48篇原创的安全系列文章,从网络安全到系统安全,从木马病毒到后门劫持,从恶意代码到溯源分析,从渗透工具到二进制工具,还有Python安全、顶会论文、黑客比赛和漏洞分享。未知攻焉知防,人生漫漫其路远兮,作为初学者,自己真是爬着前行,感谢很多人的帮助,继续爬着,继续加油!
欢迎大家讨论,是否觉得这系列文章帮助到您!同时再次推荐Cracer教程和Fox老师的文章,任何建议都可以评论告知读者,共勉。
武汉加油!湖北加油!中国加油!!!
(By:Eastmount 2020-02-21 下午3点写于贵阳 http://blog.csdn.net/eastmount/ )
[1] cracer第八期视频 - B站(强推)
[2] OWASP Top 10 简单介绍 - ST0new
[3] WEB安全测试要点总结 - 浅浅爱默默
[4] HTTP协议超级详解 - 爱文飞翔
[5] https://www.cnblogs.com/sym945/p/11715984.html
[6] 作者网络安全自学篇系列(详见文章中)