目录

  • 简介
  • 命令参数
  • 目标指定
    • 文件读入
    • 随机
    • 排除
  • 主机发现
  • 扫描技术
  • 端口指定和扫描顺序
  • 服务/版本发现
  • 脚本扫描
  • 操作系统版本
  • 时间与性能
  • 防火墙/入侵防御 绕过
  • 输出
  • 杂项
  • 参数指导
  • 参考

简介

Nmap是一个免费的开源用于网络发现和安全审计的实用程序。许多系统和网络管理员还发现它对于网络库存、管理服务升级计划以及监控主机或服务正常运行时间等任务很有用。Nmap 以新颖的方式使用原始 IP 数据包来确定网络上可用的主机、这些主机提供的服务(应用程序名称和版本)、它们运行的​​操作系统(和操作系统版本)、数据包过滤器/防火墙的类型正在使用中,以及其他数十种特性。它旨在快速扫描大型网络,但对单个主机也能正常工作。Nmap 运行在所有主要的计算机操作系统上,官方二进制包适用于 Linux、Windows 和 Mac OS X。 除了经典的命令行 Nmap 可执行文件,Zenmap),一个灵活的数据传输、重定向和调试工具(Ncat),一个用于比较扫描结果的实用程序(Ndiff),以及一个数据包生成和响应分析工具(Nping)。

灵活:支持数十种高级技术,用于绘制充满 IP 过滤器、防火墙、路由器和其他障碍的网络。这包括许多端口扫描机制(TCP 和 UDP)、操作系统检测、版本检测、ping 扫描等。
功能强大:Nmap 已被用于扫描由数十万台机器组成的庞大网络。
便携:支持大多数操作系统,包括 Linux、 Microsoft Windows、 FreeBSD、 OpenBSD、 Solaris、 IRIX、 Mac OS X、 HP-UX、 NetBSD、 Sun OS、 Amiga等。
简单:虽然 Nmap 为高级用户提供了丰富的高级功能,但您可以像“nmap -v -A targethost ”一样简单地开始 。提供传统命令行和图形 (GUI) 版本以满足您的喜好。那些不想从源代码编译 Nmap 的人可以使用二进制文件。
免费:Nmap 项目的主要目标是帮助使 Internet 更加安全,并为管理员/审计员/黑客提供用于探索其网络的高级工具。Nmap 可免费下载,还附带完整的源代码,您可以根据许可条款修改和重新分发。
有据可查:我们在全面和最新的手册页、白皮书、教程甚至整本书中投入了大量精力!在这里可以找到多种语言版本。

命令参数

Nmap 7.80 ( https://nmap.org )
Usage: nmap [Scan Type(s)] [Options] {target specification}
TARGET SPECIFICATION:
Can pass hostnames, IP addresses, networks, etc.
Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
-iL <inputfilename>: Input from list of hosts/networks
-iR <num hosts>: Choose random targets
–exclude <host1[,host2][,host3],…>: Exclude hosts/networks
–excludefile <exclude_file>: Exclude list from file
HOST DISCOVERY:
-sL: List Scan - simply list targets to scan
-sn: Ping Scan - disable port scan
-Pn: Treat all hosts as online – skip host discovery
-PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports
-PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes
-PO[protocol list]: IP Protocol Ping
-n/-R: Never do DNS resolution/Always resolve [default: sometimes]
–dns-servers <serv1[,serv2],…>: Specify custom DNS servers
–system-dns: Use OS’s DNS resolver
–traceroute: Trace hop path to each host
SCAN TECHNIQUES:
-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans
-sU: UDP Scan
-sN/sF/sX: TCP Null, FIN, and Xmas scans
–scanflags : Customize TCP scan flags
-sI <zombie host[:probeport]>: Idle scan
-sY/sZ: SCTP INIT/COOKIE-ECHO scans
-sO: IP protocol scan
-b <FTP relay host>: FTP bounce scan
PORT SPECIFICATION AND SCAN ORDER:
-p <port ranges>: Only scan specified ports
Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
–exclude-ports <port ranges>: Exclude the specified ports from scanning
-F: Fast mode - Scan fewer ports than the default scan
-r: Scan ports consecutively - don’t randomize
–top-ports <number>: Scan <number> most common ports
–port-ratio <ratio>: Scan ports more common than <ratio>
SERVICE/VERSION DETECTION:
-sV: Probe open ports to determine service/version info
–version-intensity <level>: Set from 0 (light) to 9 (try all probes)
–version-light: Limit to most likely probes (intensity 2)
–version-all: Try every single probe (intensity 9)
–version-trace: Show detailed version scan activity (for debugging)
SCRIPT SCAN:
-sC: equivalent to --script=default
–script=<Lua scripts>: <Lua scripts> is a comma separated list of
directories, script-files or script-categories

–script-args=<n1=v1,[n2=v2,…]>: provide arguments to scripts
–script-args-file=filename: provide NSE script args in a file
–script-trace: Show all data sent and received
–script-updatedb: Update the script database.
–script-help=<Lua scripts>: Show help about scripts.
OS DETECTION:
-O: Enable OS detection
–osscan-limit: Limit OS detection to promising targets
–osscan-guess: Guess OS more aggressively
TIMING AND PERFORMANCE:
Options which take <time> are in seconds, or append ‘ms’ (milliseconds),
‘s’ (seconds), ‘m’ (minutes), or ‘h’ (hours) to the value (e.g. 30m).
-T<0-5>: Set timing template (higher is faster)
–min-hostgroup/max-hostgroup <size>: Parallel host scan group sizes
–min-parallelism/max-parallelism <numprobes>: Probe parallelization
–min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>: Specifies
probe round trip time.
–max-retries <tries>: Caps number of port scan probe retransmissions.
–host-timeout <time>: Give up on target after this long
–scan-delay/–max-scan-delay <time>: Adjust delay between probes
–min-rate <number>: Send packets no slower than <number> per second
–max-rate <number>: Send packets no faster than <number> per second
FIREWALL/IDS EVASION AND SPOOFING:
-f; --mtu <val>: fragment packets (optionally w/given MTU)
-D <decoy1,decoy2[,ME],…>: Cloak a scan with decoys
-S <IP_Address>: Spoof source address
-e <iface>: Use specified interface
-g/–source-port <portnum>: Use given port number
–proxies <url1,[url2],…>: Relay connections through HTTP/SOCKS4 proxies
–data <hex string>: Append a custom payload to sent packets
–data-string <string>: Append a custom ASCII string to sent packets
–data-length <num>: Append random data to sent packets
–ip-options <options>: Send packets with specified ip options
–ttl <val>: Set IP time-to-live field
–spoof-mac <mac address/prefix/vendor name>: Spoof your MAC address
–badsum: Send packets with a bogus TCP/UDP/SCTP checksum
OUTPUT:
-oN/-oX/-oS/-oG <file>: Output scan in normal, XML, s|<rIpt kIddi3,
and Grepable format, respectively, to the given filename.

-oA <basename>: Output in the three major formats at once
-v: Increase verbosity level (use -vv or more for greater effect)
-d: Increase debugging level (use -dd or more for greater effect)
–reason: Display the reason a port is in a particular state
–open: Only show open (or possibly open) ports
–packet-trace: Show all packets sent and received
–iflist: Print host interfaces and routes (for debugging)
–append-output: Append to rather than clobber specified output files
–resume <filename>: Resume an aborted scan
–stylesheet <path/URL>: XSL stylesheet to transform XML output to HTML
–webxml: Reference stylesheet from Nmap.Org for more portable XML
–no-stylesheet: Prevent associating of XSL stylesheet w/XML output
MISC:
-6: Enable IPv6 scanning
-A: Enable OS detection, version detection, script scanning, and traceroute
–datadir <dirname>: Specify custom Nmap data file location
–send-eth/–send-ip: Send using raw ethernet frames or IP packets
–privileged: Assume that the user is fully privileged
–unprivileged: Assume the user lacks raw socket privileges
-V: Print version number
-h: Print this help summary page.

EXAMPLES:
nmap -v -A scanme.nmap.org
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80
SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES

接下来进行展示
攻击机:kali(Nmap 7.80)
靶机:owaspbwa、metasploitable_ubuntu
搭建过程:《MetaSploit渗透测试魔鬼训练营》之环境搭建

目标指定

CIDR风格 192.168.1.0/24
域名或ip www.baidu.com,www.zhihu.com,192.168.31.128
分割线 10.22-25.43.32

文件读入

-iL <inputfilename>: 从文件中读入带扫描主机或网络列表

随机

-iR <num hosts>: 随机选择num个作为目标
个人认为没必要,需要随机时在调用nmap的外层软件随机即可,主要是有些防御手段发现某ip挨个访问网络内的主机时,可能封ip。

排除

–exclude <host1[,host2][,host3],…>: 排除主机/网络
–excludefile <exclude_file>:从文件中排除


从文件排除的留给读者实践吧。

主机发现

-sL: 简单列表扫描
-sP/-sn: 不进行端口扫描,仅发现主机
-Pn: 将所有主机视为在线,跳过主机发现
-PS/PA/PU/PY[portlist]: 使用TCP SYN/ACK, UDP or SCTP对所给端口进行主机发现
-PE/PP/PM:ICMP回显、时间戳和网络掩码请求发现探测
-PO[protocol list]: IP 协议 Ping
-n/-R: 从不进行DNS解析/始终解析[默认值:有时]
–dns-servers <serv1[,serv2],…>:指定自定义DNS服务器
–system-dns: 使用操作系统的DNS解析程序
–traceroute: 跟踪每个主机的跃点路径

-sn之前叫做-sP,目前版本也可以使用,建议用最新的。
–traceroute发现路径

显示有一跳

扫描技术

-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon 扫描
-sU: UDP 扫描
-sN/sF/sX: TCP Null, FIN, and Xmas 扫描
–scanflags <flags>: 自定义TCP扫描标志
-sI <zombie host[:probeport]>: Idle 扫描
-sY/sZ: SCTP INIT/COOKIE-ECHO 扫描
-sO: IP 协议扫描
-b <FTP relay host>: FTP反弹扫描
使用-sS进行半连接扫描 使用wireshark抓包,可以看到发送 的TCP数据包,SYN是最快的,半连接。

端口指定和扫描顺序

-p <port ranges>: 仅扫描指定的具体端口 例如: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
–exclude-ports <port ranges>: 排除这些端口
-F: 快速模式,比默认的端口扫描的更少
-r: 连续扫描端口,不要随机化
–top-ports <number>: 扫描<number>个最常见的端口
–port-ratio <ratio>: 扫描比<ratio>更常见的端口
使用–top-ports来扫描常用top5端口
端口6大状态
open(开放的)
应用程序正在该端口接收TCP 连接或者UDP报文。发现这一点常常是端口扫描 的主要目标。安全意识强的人们知道每个开放的端口 都是攻击的入口。攻击者或者入侵测试者想要发现开放的端口。 而管理员则试图关闭它们或者用防火墙保护它们以免妨碍了合法用户。 非安全扫描可能对开放的端口也感兴趣,因为它们显示了网络上那些服务可供使用。

closed(关闭的)
关闭的端口对于Nmap也是可访问的(它接受Nmap的探测报文并作出响应), 但没有应用程序在其上监听。 它们可以显示该IP地址上(主机发现,或者ping扫描)的主机正在运行up 也对部分操作系统探测有所帮助。 因为关闭的关口是可访问的,也许过会儿值得再扫描一下,可能一些又开放了。 系统管理员可能会考虑用防火墙封锁这样的端口。 那样他们就会被显示为被过滤的状态,下面讨论。

filtered(被过滤的)
由于包过滤阻止探测报文到达端口, Nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由器规则 或者主机上的软件防火墙。这样的端口让攻击者感觉很挫折,因为它们几乎不提供 任何信息。有时候它们响应ICMP错误消息如类型3代码13 (无法到达目标: 通信被管理员禁止),但更普遍的是过滤器只是丢弃探测帧, 不做任何响应。 这迫使Nmap重试若干次以访万一探测包是由于网络阻塞丢弃的。 这使得扫描速度明显变慢。

unfiltered(未被过滤的)
未被过滤状态意味着端口可访问,但Nmap不能确定它是开放还是关闭。 只有用于映射防火墙规则集的ACK扫描才会把端口分类到这种状态。 用其它类型的扫描如窗口扫描,SYN扫描,或者FIN扫描来扫描未被过滤的端口可以帮助确定 端口是否开放。

open|filtered(开放或者被过滤的)
当无法确定端口是开放还是被过滤的,Nmap就把该端口划分成 这种状态。开放的端口不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃 了探测报文或者它引发的任何响应。因此Nmap无法确定该端口是开放的还是被过滤的。 UDP,IP协议, FIN,Null,和Xmas扫描可能把端口归入此类。

closed|filtered(关闭或者被过滤的)
该状态用于Nmap不能确定端口是关闭的还是被过滤的。 它只可能出现在IPID Idle扫描中。

服务/版本发现

-sV: 探测打开的端口,确定服务/版本信息
–version-intensity <level>:从0到9(尝试所有探测)
–version-light:限制为仅对最可能的进行探测(强度2)
–version-all: 尝试所有探测(强度9)
–version-trace: 显示详细的版本扫描活动(用于调试)
使用-sV来查看端口对应服务及版本

脚本扫描

-sC: 相当于–script=default
–script=<Lua scripts>: <Lua scripts> 是以逗号分隔的目录、脚本文件或脚本类别列表
–script-args=<n1=v1,[n2=v2,…]>: 为脚本提供参数
–script-args-file=filename: 在文件中提供NSE脚本参数
–script-trace: 在文件中提供NSE脚本参数显示所有发送和接收的数据
–script-updatedb: 更新脚本数据库
–script-help=<Lua scripts>: 展示脚本的帮助
查看脚本列表

查看脚本内容

查看脚本帮助并使用

操作系统版本

-O: 操作系统探测
–osscan-limit: 将操作系统检测限制在有希望的目标上
–osscan-guess: 更积极地猜测操作系统
使用-O探测操作系统

时间与性能

选项以秒为单位,或附加“ms”(毫秒),“s”(秒)、“m”(分钟)、“h”(小时)设置为值(例如30m)。
-T<0-5>: 设置计时模板(越高速度越快)
–min-hostgroup/max-hostgroup <size>: 并行主机扫描组大小
–min-parallelism/max-parallelism <numprobes>: 并行化探测
–min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>: 指定探测往返时间。
–max-retries <tries>:限制端口扫描探测重新传输的次数为<tries>。
–host-timeout <time>:过了这么<time>长时间就放弃了

–scan-delay/–max-scan-delay <time>:调整探测之间的延迟为<time>
–min-rate <number>: 发送数据包的速度不低于每秒<number>个
–max-rate <number>: 发送数据包的速度不超过每秒<number>个

模板名称有paranoid (0)、sneaky (1)、polite (2)、normal(3)、 aggressive (4)和insane (5)。前两种模式用于IDS躲避,Polite模式降低了扫描 速度以使用更少的带宽和目标主机资源。默认模式为Normal,因此-T3 实际上是未做任何优化。Aggressive模式假设用户具有合适及可靠的网络从而加速扫描。Insane模式假设用户具有特别快的网络或者愿意为获得速度而牺牲准确性。

这个一般设置模板为4,很少一个个去设置。

防火墙/入侵防御 绕过

-f; --mtu <val>: 片段数据包(可选择w/给定MTU)
-D <decoy1,decoy2[,ME],…>: 用诱饵掩盖扫描
-S <IP_Address>: 欺骗源地址
-e <iface>: 使用指定的接口
-g/–source-port <portnum>: 使用给定的端口号
–proxies <url1,[url2],…>: 通过HTTP/SOCKS4代理中继连接
–data <hex string>: 将自定义有效负载附加到发送的数据包
–data-string <string>: 向发送的数据包附加自定义ASCII字符串
–data-length <num>: 向发送的数据包附加随机数据
–ip-options <options>:使用指定的ip选项发送数据包
–ttl <val>: 设置IP生存时间字段
–spoof-mac <mac address/prefix/vendor name>: 伪造你的MAC地址
–badsum: 使用伪TCP/UDP/SCTP校验和发送数据包
可以使用-S --spoof-mac来伪造MAC地址,当然, 最重要的是去除Nmap的流量特征,见参考。
没有欺骗前的数据包
数据包的具体内容

使用-S --spoof-mac等进行欺骗

修改后,打开具体的数据包,可以看到ip和mac地址都被修改了。

输出

-oN/-oX/-oS/-oG <file>: 分别以普通文本文件、XML、ScRipTKIdd|3oUTpuT和可Grep格式输出到给定文件路径。
-oA <basename>:同时以三种主要格式输出(分别以<basename>.nmap、<basename>.gnmap、<basename>.xml保存)
-v: 增加详细程度(使用-vv或更多以获得更大效果)
-d: 提高调试级别(使用-dd或更多以获得更大的效果)
–reason: 显示端口处于特定状态的原因
–open: 仅显示打开(或可能打开)的端口
–packet-trace:显示发送和接收的所有数据包
–iflist: 打印主机接口和路由(用于调试)
–append-output: 附加到指定的输出文件,而不是删除指定的输出文件
–resume <filename>: 恢复中止的扫描
–stylesheet <path/URL>: 将XML输出转换为HTML的XSL样式表
–webxml: 请参考Nmap.Org中的样式表以获取更具可移植性的XML
–no-stylesheet: 防止XSL样式表与XML输出关联
一般情况下,我们就是输出到了控制台,也可以输出到文件进行保存,方便之后的分析。
这里使用xml格式作为演示,下方参考的平衡准确率和速率那篇文章用的-oG,方便使用grep命令等进行文件操作,当然使用xml保存也可以用一下xml解析包对文件进行处理。 -oS基本不用。

杂项

-6: 启用IPv6扫描
-A: 启用操作系统检测、版本检测、脚本扫描和跟踪路由
–datadir : 指定自定义Nmap数据文件位置
–send-eth/–send-ip: 使用原始以太网帧或IP数据包发送
–privileged:假设用户具有完全特权
–unprivileged: 假设用户缺少原始套接字权限
-V: 打印版本号
-h:打印此帮助摘要页面
展示-A进行端口、操作系统及一些脚本等的扫描。当目标比较少,自己又懒得看脚本帮助时可以用一下。

参数指导

  1. 去除Nmap流量特征,重新编译
  2. 使用主机发现一节的-sn等进行主机发现
  3. 使用端口选项一节的-p添加端口
  4. 使用扫描技术一节的-sS、-sT、-sU等添加技术(根据扫描的目标和端口选择)
  5. 使用版本发现一节的-sV进行版本的详细扫描
  6. 使用操作系统探测一节的-O进行操作系统扫描
  7. 使用时间与性能一节的-T4进行快速扫描
  8. 使用脚本一节的nse文件名,或自己脚本来获取更多内容
  9. 使用防火墙绕过一节的-S -e --spoof-mac进行欺骗
  10. 使用输出一节的-oN、-oX等进行输出

一个比较好的针对owaspbwa(网站)的nmap扫描参数为

nmap -p 80 -sS -sV -O -T4 -S 192.168.31.54 -e eth0 --spoof-mac cisco --script=http-title 192.168.31.129 -oX target.xml

参考

在全网端口扫描中寻找速率和准确率的平衡点
Nmap参考指南
Nmap流量特征修改
更多内容查看:网络安全-自学笔记

喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。如果您感觉有所收获,自愿打赏,可选择支付宝18833895206(小于),您的支持是我不断更新的动力。

网络安全-端口扫描神器Nmap使用详解与参数指导相关推荐

  1. 端口扫描程序nmap使用详解

    1 概述 Nmap是一款网络扫描和主机检测的非常有用的工具,适用于winodws,linux,等操作系统,支持很多扫描技术,例如:UDP.TCP connect().TCP SYN(半开扫描).ftp ...

  2. 端口扫描工具 NMAP使用详解,收藏这一篇就够了

    前言 为了保护计算机不受攻击和各种病毒.木马的侵扰,其实我们可以在网络设备上采取措施,对某些数据包进行阻挡.过滤等,但重要的还是用户需要有一定的意识,采取措施对自己的计算机进行保护安全: 那么,今天主 ...

  3. Linux下安全扫描工具Nmap用法详解

    扫描器是一种能够自动检测主机安全性弱点的程序.扫描器通过发送特定的网络数据包,记录目标主机的应答消息,从而收集关于目标主机的各种信息.目前网络上有很多扫描软件,比较著名的扫描器有SSS,X-Scan, ...

  4. 端口扫描神器 - Nmap的基本使用

    搜索公众号:白帽子左一,领配套练手靶场,全套安全课程及工具 一.Nmap简介 Nmap是一款网络扫描和主机检测的非常有用的工具. 可以用于收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器. ...

  5. Nmap命令详解及常用命令总结

    Nmap学习 文章目录 Nmap学习 0 Nmap 介绍 1 Nmap命令详解 1.1 Nmap 命令help详解(内附中文翻译) 1.2 Nmap 命令思维导图 2 Nmap 常见使用场景以及相关命 ...

  6. java lombok 视频_Java开发神器Lombok使用详解

    最近正在写SpringBoot系列文章和录制视频教程,每次都要重复写一些Getter/Setter.构造器方法.字符串输出的ToString方法和Equals/HashCode方法等.甚是浪费时间,也 ...

  7. 依赖注入神器:Dagger2详解系列

    依赖注入神器:Dagger2详解系列 序言 Dagger2是啥 Dagger2是啥,Google告诉我们: Dagger is a fully static, compile-time depende ...

  8. [网络安全学习篇2]:IP详解及简单的DOS命令(千峰网络安全视频笔记 2 day)

    引言:我的系列博客[网络安全学习篇]上线了,小编也是初次创作博客,经验不足:对千峰网络信息安全开源的视频公开课程的学习整理的笔记整理的也比较粗糙,其实看到目录有300多集的时候,讲道理,有点怂了,所以 ...

  9. ssl证书绑定windows服务器端口及SSL配置命令详解

    ssl证书绑定windows服务器端口及SSL配置命令详解 第一部分 多层应用服务器中SSL的服务器配置 一.首先,你的 服务器的防火墙 或云服务器的安全配置要哦放通下面你想配置的端口 我配置的端口为 ...

最新文章

  1. SAP PM 初级系列22 - IW38可以批量处理维修工单
  2. linux 权限中加号,关于Linux中权限列中的加号及点的深度探索
  3. 【必读】文案都写不好,还谈什么互联网思维
  4. html 首行缩进2个汉字
  5. tortoisegit推送ssh-key需要输入用户信息
  6. Linux下使用iotop检测磁盘io使用情况
  7. php实现飘窗,JS实现网站图片飘窗效果,JavaScript悬浮广告(附详细代码)
  8. [转]CTO谈豆瓣网和校内网技术架构变迁
  9. 一种在智能对话中实现上下文功能的方法
  10. Which path should be used jdk or jre for JAVA_HOME environment variable?
  11. java 继承 String类
  12. mysql中php生成唯一ID
  13. VSCode搭建vue前端开发工程的配置文件-launch.json
  14. paip.提升安全性---WEB程序安全检测与防范
  15. h5 前端 PHP,十分钟搞定微信H5支付(ThinkPHP5.1)
  16. overleaf表格_Latex中插入表格
  17. 什么教我们用计算机画画,作文:我第一次用电脑画画
  18. 最基础的python语法
  19. 浅谈~区块链的现状与未来!
  20. 程序员的有个坏习惯!

热门文章

  1. java开源播放器_免费开源的JS音乐播放器插件
  2. linux录制声卡声音_Linux下使用外置声卡录制视频音频
  3. 如何完成微信小程序毕业设计的写作流程及答辩过程
  4. 计算机主板芯片式电池,正确看待主板上纽扣电池的那些事,不要被一些谬论所迷惑...
  5. Python返回系统桌面路径的方法
  6. 今天科普一下 苹果开发者账号中:个人、公司、企业账号的区别
  7. 在做RTSP摄像机H5无插件直播中遇到的对接海康摄像机发送OPTIONS心跳时遇到的坑
  8. 苹果手机利用itune和手机上的app电脑互传数据
  9. 网络安全攻击手段之永恒之蓝【MS17_010】利用及漏洞剖析
  10. Docker学习笔记(一)-容器、镜像和客户端与守护进程