学习方式方法 的 分享
学习方法有很多,很多种,但是并不是每一种方法都适合你自己, 比如说有些人喜欢系统化的把一个东西(比如一门编程语言)学完再学另外一个东西,这样有很多好处,但是也有弊端, 比如,好处是学习的完整,成体系化,这样学的会非常扎实, 但是,弊端是太耗时,而且很臃肿,你到后面会发现很多是用不到的, 而渗透测试的学习方法有很多, 我就喜欢那种实战中积累经验,实战中学习技能, 比如我在打一个靶场,而且这个靶场有是利用到某些关键点,那么,在这场打靶中就可以专门学习这些关键点的相关原理,和利用方法。 这样下去打的靶场越多,遇到的场景,会和相关技能连接在一起成一种链式体系。 这也是一种学习方法,在今天这个信息爆炸,知识爆炸的时代,如果花一两年去专门学一个编程语言,那太耗时间了。
进入正题
Kali Linux是基于Debian的Linux发行版,设计用于数字取证操作系统。由Offensive Security Ltd维护和资助。最先由Offensive Security的Mati Aharoni和Devon Kearns通过重写BackTrack来完成,BackTrack是他们之前写的用于取证的Linux发行版
关于系统特性,定制,在不同设备上的安装,请在Kali Linux官网上查阅,www.kali.org/
Linux的创始人是李纳斯·托沃兹Linus Torvalds(芬兰)
他开发的只是一个系统内核,而我们日常使用的是各种各样的发行版
就有一些其他人把内核拿过来,结合上GNU开发的系统工具系统库,再配上一个系统桌面就是一个漂亮的linux发行版
- 基于Debian的Linux发行版本
- 用于渗透测试和安全审计
- 包含600+安全工具
- FHS标准目录结构安全的开发环境
- 支持大量无线设备、硬件
- 完全可定制
- 永久免费
- 免去渗透测试人员自己维护工具的负担
2020年以前是root账号登陆,之前都是普通用户登陆 Root用户策略 网络服务策略 更新策略
下载地址:www.kali.org/get-kali/#k… 验证hash值 制作启动光盘 制作启动U盘 设置BIOS启动顺序 启动安装
Top 10安全工具 字体调整 强行终止程序 文件目录 共享文件
熟悉BASH命令
Ls、cd、cat、more、tail、cp、rm、top、ps、grep、ifconfig、netstat、awk、sort、
fdisk、mount、dmesg、find、whereis、
Echo、vi、vim
管道
Shell脚本
──(root㉿kali)-[/]
└─# ls home #查看目录
acunetix acunetix.zip kali
┌──(root㉿kali)-[/]
└─# ls home -l #查看目录的详情
总用量 335796
drwxr-xr-x 6 acunetix acunetix 4096 12月 11 04:44 acunetix
-rw-r--r-- 1 root root 343839143 4月 30 05:25 acunetix.zip
drwxr-xr-x 16 kali kali 4096 5月 17 11:07 kali
┌──(root㉿kali)-[/]
└─# ls home/kali -la #查看隐藏文件
总用量 136
-rw------- 1 kali kali 956 5月 7 12:22 .zsh_history #linux下,以.开头的文件都是隐藏文件
-rw-r--r-- 1 kali kali 10877 8月 8 2022 .zshrc
查看网络相关配置信息
ifconfig、netstat、 ip
┌──(root㉿kali)-[~]
└─# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
ip [ -force ] -batch filename
where OBJECT := { address | addrlabel | amt | fou | help | ila | ioam | l2tp |
link | macsec | maddress | monitor | mptcp | mroute | mrule |
neighbor | neighbour | netconf | netns | nexthop | ntable |
ntbl | route | rule | sr | tap | tcpmetrics |
token | tunnel | tuntap | vrf | xfrm }
OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
-h[uman-readable] | -iec | -j[son] | -p[retty] |
-f[amily] { inet | inet6 | mpls | bridge | link } |
-4 | -6 | -M | -B | -0 |
-l[oops] { maximum-addr-flush-attempts } | -br[ief] |
-o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
-rc[vbuf] [size] | -n[etns] name | -N[umeric] | -a[ll] |
-c[olor]}
┌──(root㉿kali)-[~]
└─# ip ad
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 10:1c:21:17:38:d3 brd ff:ff:ff:ff:ff:ff
inet 192.168.10.16/24 brd 192.168.10.255 scope global dynamic noprefixroute eth0
valid_lft 1567sec preferred_lft 1567sec
inet6 fe80::eb0c:dee9:9d57:95bb/64 scope link noprefixroute
valid_lft forever preferred_lft forever
┌──(root㉿kali)-[~]
└─# ip route
default via 192.168.10.1 dev eth0 proto dhcp src 192.168.10.16 metric 100
192.168.10.0/24 dev eth0 proto kernel scope link src 192.168.10.16 metric 100
以前用ifconfig查看网络配置,现在都可以用ip 、ip ad来查看 还可以用
┌──(root㉿kali)-[~]
└─# networkctl
WARNING: systemd-networkd is not running, output will be incomplete.
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback n/a unmanaged
2 eth0 ether n/a unmanaged
2 links listed.
┌──(root㉿kali)-[~]
└─# networkctl status
WARNING: systemd-networkd is not running, output will be incomplete.
● State: n/a
Online state: unknown
Address: 192.168.10.106 on eth0
fe80::eb0c:dee9:9d57:95bb on eth0
Gateway: 192.168.10.1 on eth0
ss -pantu
┌──(root㉿kali)-[~]
└─# ss -pantu
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
udp ESTAB 0 0 192.168.10.16%eth0:68 192.168.10.200:67 users:(("NetworkManager",pid=532,fd=25))
udp ESTAB 0 0 [::1]:33159 [::1]:33159 users:(("postgres",pid=81496,fd=8),("postgres",pid=81447,fd=8),
tcp LISTEN 0 511 0.0.0.0:7880 0.0.0.0:* users:(("sensor-bridge",pid=733,fd=20))
tcp LISTEN 0 244 127.0.0.1:35432 0.0.0.0:* users:(("postgres",pid=567,fd=6))
tcp LISTEN 0 128 0.0.0.0:3443 0.0.0.0:* users:(("opsrv",pid=610,fd=11))
tcp ESTAB 0 0 192.168.10.16:45870 31.111.65.15:443
查看本机与其他网段的机器建立的连接 netstat -pantu
┌──(root㉿kali)-[~]
└─# netstat -pantu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:35432 0.0.0.0:* LISTEN 567/postgres
tcp 0 0 0.0.0.0:3443 0.0.0.0:* LISTEN 610/opsrv
tcp 0 0 0.0.0.0:7880 0.0.0.0:* LISTEN 733/sensor-bridge
tcp 0 0 192.168.10.106:45870 34.117.65.55:443 ESTABLISHED 20316/firefox-esr
查看本机与其他网段的机器建立的连接 netstat -pantul
┌──(root㉿kali)-[~]
└─# netstat -pantul
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:35432 0.0.0.0:* LISTEN 567/postgres
tcp 0 0 0.0.0.0:3443 0.0.0.0:* LISTEN 610/opsrv
tcp 0 0 0.0.0.0:7880 0.0.0.0:* LISTEN 733/sensor-bridge
tcp 0 0 192.168.10.106:45870 34.117.65.55:443 ESTABLISHED 20316/firefox-esr
tcp6 0 0 ::1:35432 :::* LISTEN 567/postgres
AWK
linux下都是文件,所以AWK很重要
at /etc/passwd | awk -F ":"