-
Notifications
You must be signed in to change notification settings - Fork 0
/
PenetrationNotes
242 lines (179 loc) · 11.7 KB
/
PenetrationNotes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
=================================================================== 渗透笔记 ==================================================================
创建日期:2024/6/3
修改日期:2024/6/3
作者:老牛
目的:主要用于记录渗透相关知识,方便自己查阅
PS: 如果觉得字小可以使用Ctrl+鼠标滚轮放大
如果搜索某个相关知识可以使用 Ctrl+F
=================================================================== 信息搜集 ==================================================================
=================================================================== 常用操作命令 ==================================================================
git 常用操作
git clone 仓库地址 //克隆仓库 举例:git clone https://github.com/xxxxx.git
git pull //将远程仓库的代码拉到本地仓库 将本地项目更新到最新
目录切换 cd
cd / 切换到根目录
cd /usr 切换到根目录下的usr目录
cd ../ 切换到上一级目录 或者 cd ..
cd ~ 切换到home目录
cd - 切换到上次访问的目录
目录查看 ls [-al]
ls 查看当前目录下的所有目录和文件
ls -a 查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls /目录名 查看指定目录下的所有目录和文件 如:ls /home
也可以组合写 ls -al 列表查看当前目录下的所有目录和文件(包括隐藏的文件)
目录操作【增,删,改,查】
【增】 mkdir
mkdir [-mp] 目录名称
-m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
-p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
举例:
mkdir test <==创建名为 test 的新目录
mkdir -p test1/test2/test3/test4 <==递归创建这些目录
【删】 rm
rm [-fir] 文件或目录
-f :就是 force 的意思,忽略不存在的文件,不会出现警告信息,强制删除
-i :互动模式,在删除前会询问使用者是否动作
-r :递归删除!最常用在目录的删除了!这是非常危险的选项!!!
全部删除:
rm -rf 将当前目录下的所有目录和文件全部删除
rm -rf / ** 【自杀命令!慎用!慎用!慎用!】**将根目录下的所有文件全部删除
【改】mv 和 cp 剪切和拷贝
mv (移动文件与目录,或修改名称)
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会升级 (update)
cp (复制文件或目录)
-a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
-d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
-l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-r:递归持续复制,用於目录的复制行为;(常用)
-s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
-u:若 destination 比 source 旧才升级 destination !
一、重命名目录
命令:mv 当前目录 新目录
例如:mv aaa bbb 将目录aaa改为bbb
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作
二、剪切目录
命令:mv 目录名称 目录的新位置
示例:将/usr/tmp目录下的aaa目录剪切到 /usr目录下面 mv /usr/tmp/aaa /usr
注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
三、拷贝目录
命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归
示例:将/usr/tmp目录下的aaa目录复制到 /usr目录下面 cp /usr/tmp/aaa /usr
注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归
【查】find
命令:find 目录 参数 文件名称
如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
举例:
find . -name "*.c" 将目前目录及其子目录下所有延伸档名是 c 的文件列出来。
find . -type f 将目前目录其其下子目录中所有一般文件列出
find . -ctime -20 将目前目录及其子目录下所有最近 20 天内更新过的文件列出
参数太多,具体用法自行百度
pwd (显示目前所在的目录)
-P :显示出确实的路径,而非使用连结 (link) 路径
新建文件【增】touch
touch aaa.txt 会在当前目录下创建一个aaa.txt文件 如果已经有aaa.txt文件则会修改这个文件的创建时间为当前时间
vi/vim 的使用
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),**输入模式(Insert mode)**和 底线命令模式(Last line mode)
命令模式:用户刚刚启动 vi/vim,便进入了命令模式
输入模式:i 切换到输入模式,以输入字符
底线命令模式:在命令模式下按下:(英文冒号)就进入了底线命令模式
常见流程:
第一步 vi aaa.txt进入命令模式
第二步 此时摁i进入编辑模式
第三步 编辑完成后摁ESC从编辑模式退到命令模式
第四步 在命令模式下按下:(英文冒号)进入了底线命令模式 输入wq 保存并退出 PS: 命令模式下 摁Shift + zz 可以快捷的保存并退出文件
文件的查看【查】
cat aaa.txt 查看文件全部内容
more aaa.txt 向下翻页显示文件内容
空格键 代表向下翻一页
Enter 代表向下翻『一行』
/字串 代表在这个显示的内容当中,向下搜寻『字串』这个关键字;
:f 立刻显示出档名以及目前显示的行数;
q 代表立刻离开 more ,不再显示该文件内容。
nl aaa.txt 显示行号查看
less aaa.txt 和more命令一样 只不过可以向上翻页
[pagedown]:向下翻动一页
[pageup] :向上翻动一页
/字串 :向下搜寻『字串』的功能
?字串 :向上搜寻『字串』的功能
权限修改 chmod
chmod 777 aaa.txt
压缩文件操作
linux中的打包文件:aa.tar
linux中的压缩文件:bb.gz
linux中打包并压缩的文件:.tar.gz
一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz
tar调用
tar -czf ceshi.tar.gz ceshi 将一个名为ceshi的目录打包压缩成ceshi.tar.gz 文件
tar -xzf ceshi.tar.gz 将ceshi.tar.gz文件解压
对于 .zip
zip -r ceshi.zip ceshi 将一个名为ceshi的目录打包压缩成ceshi.zip 文件 且-r参数可以使zip包中保留目录层级结构
zip -q -r ceshi.zip ceshi -q选项:压缩文件时不显示压缩过程的详细信息
unzip ceshi.zip 解压到当前目录
unzip ceshi.zip -d test 解压到test目录下
apt 包管理常用命令
sudo apt install <package_name> # 安装单个软件包
sudo apt install <package_name1> <p..e2> <p..e3> 安装多个软件包,中间以空格隔开
sudo apt install <package_name>=<version_number> 安装指定版本的软件
sudo apt install <package_name> --no-upgrade 安装指定的软件包,如果已经安装,则不升级它
sudo apt install <package_name> --only-upgrade 只升级指定的软件包,如果该软件包不存在,则不需要安装它
sudo apt remove <package_name> 移除指定的软件包
sudo apt purge <package_name> 移除软件包及配置文件
sudo apt update 检查所有安装的软件包是否有可用的更新,注意这里只检查,不更新
apt list --upgradeable 列出所有可升级的软件包
apt list --installed 列出所有已安装的软件包
apt list --all-versions 列出所有已安装软件的版本信息
sudo apt upgrade <package_name> 更新指定的软件包,执行upgrade之前,最好先执行update检查一遍
sudo apt dist-upgrade <p..e> 更新指定的软件包,同时智能处理软件包的依赖,同upgrade一样,执行之前最好执行一遍update检查一下可用的更新
sudo apt search <keyword> 查找关键字为<keyword>的相关软件包,可以查未安装的软件包
sudo apt show <package_name> 显示指定软件包的相关信息,同search一样,也可以显示系统未安装的软件包信息
1.更新软件包列表:sudo apt update
2.升级已安装的软件包:sudo apt upgrade
3.全面升级系统(包括处理依赖关系变化):sudo apt full-upgrade
4.自动清理不再需要的依赖项:sudo apt autoremove
5.清理下载的包文件缓存:sudo apt clean
shutdown 命令用于关闭系统。常用的参数包括:
-h:关闭系统(halt)。
-r:重启系统(reboot)。
-H:强制 halt。
-P:关机(power off)。
-c:取消一个已经运行的 shutdown。
-k:不是真的关机,只是发送警告信息。
time:指定何时关机,可以是 now 立即关机,也可以是 +m 表示 m 分钟后关机。
sudo shutdown -h now # 立即关机
sudo shutdown -r now # 立即重启
sudo shutdown -h +10 # 10 分钟后关机
sudo shutdown -c # 取消关机
sudo shutdown -k now "This is a warning message." # 发送警告信息但不关机
ps -f 查看当前运行的进程有哪些 -f 是列出详细信息
终止前台当前进程,发送 CTRL + C 按键
终止后台某进程 发送命令 kill 目标pid 或强制终止 kill -9 目标pid
如果想了解一个命令具体用法 可以使用man 举例 man pwd
=================================================================== 知识科普 ==================================================================
权限符号及其数字表示
r (读权限) = 4
w (写权限) = 2
x (执行权限) = 1
权限可以组合在一起表示,例如:
rw- (读和写权限) = 4 + 2 = 6
r-x (读和执行权限) = 4 + 1 = 5
rwx (读、写和执行权限) = 4 + 2 + 1 = 7
--- (没有任何权限) = 0
目录权限的设置分为三部分:所有者权限、组权限和其他用户权限。每部分权限用一个数字表示,三个数字组合在一起形成最终的权限设置。
例如,权限设置为 rwxr-xr-- 可以分解为:
所有者权限(rwx)= 7
组权限(r-x)= 5
其他用户权限(r--)= 4
因此,rwxr-xr-- 表示为 754。
常见的目录权限数字表示
777:所有用户(所有者、组、其他用户)都有读、写、执行权限。
755:所有者有读、写、执行权限,组和其他用户有读、执行权限。
700:只有所有者有读、写、执行权限,组和其他用户没有任何权限。
644:所有者有读、写权限,组和其他用户只有读权限。
600:只有所有者有读、写权限,组和其他用户没有任何权限。
=================================================================== End ==================================================================