/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
FreeBSD - hvorfor har min sudo ændret sig?
Fra : JD


Dato : 27-06-06 09:27

Jeg har i dag modtaget denne daglige status email fra min FreeBSD:

--- /var/log/setuid.today Mon Jun 19 03:03:07 2006
+++ /tmp/security.a8udSIpQ Tue Jun 27 03:03:27 2006
@@ -33,11 +33,10 @@
15923094 -r-sr-xr-x 2 root wheel 5828 Jun 2 22:17:39 2006
/usr/bin/yppasswd
15945031 -r-sr-xr-x 1 root wheel 3400 Jun 2 22:16:12 2006
/usr/libexec/pt_chown
15945246 -r-xr-sr-x 1 root smmsp 579872 Feb 15 13:16:03 2006
/usr/libexec/sendmail/sendmail
-10151084 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004
/usr/local/bin/mbmon
+16112756 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004
/usr/local/bin/mbmon
10103879 -r-sr-xr-x 1 pop wheel 22844 Oct 16 00:27:28 2004
/usr/local/bin/qpopauth
10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005
/usr/local/bin/sudo
10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005
/usr/local/bin/sudoedit
-10151085 -r-sr-xr-x 1 root wheel 46936 Oct 16 07:57:48 2004
/usr/local/bin/xmbmon
10151208 -rwxr-sr-x 1 root kmem 112860 Apr 4 00:55:05 2005
/usr/local/sbin/lsof
15945103 -r-sr-sr-x 1 root authpf 14724 Jun 2 22:17:45 2006
/usr/sbin/authpf
15945179 -r-xr-sr-x 1 root daemon 43112 Jun 2 22:17:50 2006
/usr/sbin/lpc

Jeg kan ikke forstå, at min sudo skulle have ændret sig, da jeg ikke har
pillet ved den. Igår rodede jeg med mbmon via ports, men alle de andre filer
synes jeg burde være urørte!? Det er en FBSD 6.1



 
 
Christian Laursen (27-06-2006)
Kommentar
Fra : Christian Laursen


Dato : 27-06-06 11:02

"JD" <jonh@doe.xyz> writes:

> Jeg har i dag modtaget denne daglige status email fra min FreeBSD:
>
> --- /var/log/setuid.today Mon Jun 19 03:03:07 2006
> +++ /tmp/security.a8udSIpQ Tue Jun 27 03:03:27 2006
> @@ -33,11 +33,10 @@
> 15923094 -r-sr-xr-x 2 root wheel 5828 Jun 2 22:17:39 2006 /usr/bin/yppasswd
> 15945031 -r-sr-xr-x 1 root wheel 3400 Jun 2 22:16:12 2006 /usr/libexec/pt_chown
> 15945246 -r-xr-sr-x 1 root smmsp 579872 Feb 15 13:16:03 2006 /usr/libexec/sendmail/sendmail
> -10151084 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004 /usr/local/bin/mbmon
> +16112756 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004 /usr/local/bin/mbmon
> 10103879 -r-sr-xr-x 1 pop wheel 22844 Oct 16 00:27:28 2004 /usr/local/bin/qpopauth
> 10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005 /usr/local/bin/sudo
> 10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005 /usr/local/bin/sudoedit
> -10151085 -r-sr-xr-x 1 root wheel 46936 Oct 16 07:57:48 2004 /usr/local/bin/xmbmon
> 10151208 -rwxr-sr-x 1 root kmem 112860 Apr 4 00:55:05 2005 /usr/local/sbin/lsof
> 15945103 -r-sr-sr-x 1 root authpf 14724 Jun 2 22:17:45 2006 /usr/sbin/authpf
> 15945179 -r-xr-sr-x 1 root daemon 43112 Jun 2 22:17:50 2006 /usr/sbin/lpc

Jeg har fjernet ombrydningen af linjerne, så det er til at læse.

> Jeg kan ikke forstå, at min sudo skulle have ændret sig, da jeg ikke har
> pillet ved den. Igår rodede jeg med mbmon via ports, men alle de andre filer
> synes jeg burde være urørte!? Det er en FBSD 6.1

Det er et spørgsmål om at læse diff-outputtet rigtigt. Linjer med et minus
i starten betyder at den pågældende linje er forsvundet. Linjer med et plus i
starten betyder at linjen er ny og ikke var der før.

Således er linjen med /usr/local/bin/mbmon ændret idet den optræder dobbelt,
først med minus og efterfølgende med plus. /usr/local/bin/xmbmon er der ikke
længere.

Resten af linjerne er præcis som de var før, så din sudo er ikke ændret.

--
Christian Laursen

JD (27-06-2006)
Kommentar
Fra : JD


Dato : 27-06-06 11:21

>> --- /var/log/setuid.today Mon Jun 19 03:03:07 2006
>> +++ /tmp/security.a8udSIpQ Tue Jun 27 03:03:27 2006
>> @@ -33,11 +33,10 @@
>> 15923094 -r-sr-xr-x 2 root wheel 5828 Jun 2 22:17:39 2006
>> /usr/bin/yppasswd
>> 15945031 -r-sr-xr-x 1 root wheel 3400 Jun 2 22:16:12 2006
>> /usr/libexec/pt_chown
>> 15945246 -r-xr-sr-x 1 root smmsp 579872 Feb 15 13:16:03 2006
>> /usr/libexec/sendmail/sendmail
>> -10151084 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004
>> /usr/local/bin/mbmon
>> +16112756 -r-sr-xr-x 1 root wheel 39608 Oct 16 07:57:46 2004
>> /usr/local/bin/mbmon
>> 10103879 -r-sr-xr-x 1 pop wheel 22844 Oct 16 00:27:28 2004
>> /usr/local/bin/qpopauth
>> 10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005
>> /usr/local/bin/sudo
>> 10127409 ---s--x--x 2 root wheel 88924 Oct 12 04:29:29 2005
>> /usr/local/bin/sudoedit
>> -10151085 -r-sr-xr-x 1 root wheel 46936 Oct 16 07:57:48 2004
>> /usr/local/bin/xmbmon
>> 10151208 -rwxr-sr-x 1 root kmem 112860 Apr 4 00:55:05 2005
>> /usr/local/sbin/lsof
>> 15945103 -r-sr-sr-x 1 root authpf 14724 Jun 2 22:17:45 2006
>> /usr/sbin/authpf
>> 15945179 -r-xr-sr-x 1 root daemon 43112 Jun 2 22:17:50 2006
>> /usr/sbin/lpc
>
> Det er et spørgsmål om at læse diff-outputtet rigtigt. Linjer med et minus
> i starten betyder at den pågældende linje er forsvundet. Linjer med et
> plus i
> starten betyder at linjen er ny og ikke var der før.

+ og - linier kan jeg forstå, men linier uden noget burde vel også være
ændret fra tidligere? Ellers giver det ingen mening, for hvis ikke de er
ændret, hvorfor er dé så med, når resten af programmerne ikke er (f.eks.
qpopper, sshd osv.)? Jeg mener... de bliver vel kun listet, hvis der er en
ændring?



Thomas S. Iversen (27-06-2006)
Kommentar
Fra : Thomas S. Iversen


Dato : 27-06-06 11:37

> + og - linier kan jeg forstå, men linier uden noget burde vel også være
> ændret fra tidligere? Ellers giver det ingen mening, for hvis ikke de er

Nej

> ændret, hvorfor er dé så med, når resten af programmerne ikke er (f.eks.
> qpopper, sshd osv.)? Jeg mener... de bliver vel kun listet, hvis der er en
> ændring?

Nej de er med for at give kontekst. Konteksten gør diff enormt meget mere
brugbar (til udvikling) end hvis der bare stod at linie 5 var ændret.

Thomas
--

JD (27-06-2006)
Kommentar
Fra : JD


Dato : 27-06-06 12:02

>> ændret, hvorfor er dé så med, når resten af programmerne ikke er (f.eks.
>> qpopper, sshd osv.)? Jeg mener... de bliver vel kun listet, hvis der er
>> en
>> ændring?
>
> Nej de er med for at give kontekst. Konteksten gør diff enormt meget mere
> brugbar (til udvikling) end hvis der bare stod at linie 5 var ændret.

Undskyld, men det forstår jeg ikke helt. Det er sikkert mig der ikke har set
lyset endnu men hvordan er det mere brugbart end hvis der kun stod de
ændrede linier? Jeg vil da personligt helst kun vide de ting der er ændret
og ikke kun have et lille udplug af ting som ikke er ændret.



Thomas S. Iversen (27-06-2006)
Kommentar
Fra : Thomas S. Iversen


Dato : 27-06-06 12:15

>> Nej de er med for at give kontekst. Konteksten gør diff enormt meget mere
>> brugbar (til udvikling) end hvis der bare stod at linie 5 var ændret.
>
> Undskyld, men det forstår jeg ikke helt. Det er sikkert mig der ikke har set
> lyset endnu men hvordan er det mere brugbart end hvis der kun stod de
> ændrede linier? Jeg vil da personligt helst kun vide de ting der er ændret
> og ikke kun have et lille udplug af ting som ikke er ændret.

Det er fordi diff's modstykke patch kan bruge en kontekst beskrivende diff
fil selvom den fil man prøver at apply .diff filen til via patch er ændret
en smule. Hmm, det lød sort. Peter og Thomas udvikler begge linux kerner. De
arbejder begge på den samme fil i den samme kerne. Thomas retter funktion A
og vil gerne give den til Peter. Men Peter har brugt en del tid på at rette
funktion B. Hvis man kun har linienumre at gå ud fra, så kan Peter og Thomas
ikke nemt udveksle diff filer. Har man kontekst så kan patch finde ud af at
de har rettet i hver deres del af filen og apply'e patchen alligevel.

diff producerer kontekst fordi det (primært) er et udviklingsværktøj. At
folk så bruger det til at vise forskelle mellem logfiler er måske ikke det
mest heldige :-/

Se iøvrigt:

http://docsrv.sco.com:507/cgi-bin/info2html?(diff)Context&lang=en

Mvh Thomas
--

JD (27-06-2006)
Kommentar
Fra : JD


Dato : 27-06-06 12:36

>> Undskyld, men det forstår jeg ikke helt. Det er sikkert mig der ikke har
>> set
>> lyset endnu men hvordan er det mere brugbart end hvis der kun stod de
>> ændrede linier? Jeg vil da personligt helst kun vide de ting der er
>> ændret
>> og ikke kun have et lille udplug af ting som ikke er ændret.
>
> Det er fordi diff's modstykke patch kan bruge en kontekst beskrivende diff
> fil selvom den fil man prøver at apply .diff filen til via patch er ændret
> en smule. Hmm, det lød sort. Peter og Thomas udvikler begge linux kerner.
> De
> arbejder begge på den samme fil i den samme kerne. Thomas retter funktion
> A
> og vil gerne give den til Peter. Men Peter har brugt en del tid på at
> rette
> funktion B. Hvis man kun har linienumre at gå ud fra, så kan Peter og
> Thomas
> ikke nemt udveksle diff filer. Har man kontekst så kan patch finde ud af
> at
> de har rettet i hver deres del af filen og apply'e patchen alligevel.

Okay, det er jeg med på, at det er smart i sådan en situation (jeg kender
Subversion), men her synes jeg det er misvisende. Hvis man ser på det
originale indlæg:

(cut således at det kan stå på en linie)
> 15923094 root wheel 5828 Jun 2 22:17:39 2006 /usr/bin/yppasswd
> 15945031 root wheel 3400 Jun 2 22:16:12 2006 /usr/libexec/pt_chown
> 15945246 root smmsp 579872 Feb 15 13:16:03 2006
> /usr/libexec/sendmail/sendmail
> -10151084 root wheel 39608 Oct 16 07:57:46 2004 /usr/local/bin/mbmon
> +16112756 root wheel 39608 Oct 16 07:57:46 2004 /usr/local/bin/mbmon
> 10103879 pop wheel 22844 Oct 16 00:27:28 2004 /usr/local/bin/qpopauth
> 10127409 root wheel 88924 Oct 12 04:29:29 2005 /usr/local/bin/sudo
> 10127409 root wheel 88924 Oct 12 04:29:29 2005 /usr/local/bin/sudoedit
> -10151085 root wheel 46936 Oct 16 07:57:48 2004 /usr/local/bin/xmbmon
> 10151208 root kmem 112860 Apr 4 00:55:05 2005 /usr/local/sbin/lsof
> 15945103 root authpf 14724 Jun 2 22:17:45 2006 /usr/sbin/authpf
> 15945179 root daemon 43112 Jun 2 22:17:50 2006 /usr/sbin/lpc

Hvordan kan linie 1-3 og 5-7 være context til linie 4?

1) /usr/bin/yppasswd
2) /usr/libexec/pt_chown
3) /usr/libexec/sendmail/sendmail
4) +/- /usr/local/bin/mbmon
5) /usr/local/bin/qpopauth
6) /usr/local/bin/sudo
7) /usr/local/bin/sudoedit

Jeg ville kunne forstå hvis disse filer var context:

#> ls -l /usr/local/bin/ | grep --before-context=3 --after-context=3 mbmon
-r-xr-xr-x 1 root wheel 122157 Feb 24 23:10 libtool13
-r-xr-xr-x 1 root wheel 8123 Feb 24 23:10 libtoolize13
-r-xr-xr-x 1 root wheel 205 Nov 18 2005 make_smbpasswd
-r-sr-xr-x 1 root wheel 39608 Oct 16 2004 mbmon
-rwxr-xr-x 1 root wheel 9838 Feb 24 23:18 mib2c
-rwxr-xr-x 1 root wheel 152652 Jun 2 13:51 mpg123
-r-xr-xr-x 1 root wheel 13208 Oct 16 2004 msgattrib



Thomas S. Iversen (27-06-2006)
Kommentar
Fra : Thomas S. Iversen


Dato : 27-06-06 12:49

> Hvordan kan linie 1-3 og 5-7 være context til linie 4?
>
> 1) /usr/bin/yppasswd
> 2) /usr/libexec/pt_chown
> 3) /usr/libexec/sendmail/sendmail
> 4) +/- /usr/local/bin/mbmon
> 5) /usr/local/bin/qpopauth
> 6) /usr/local/bin/sudo
> 7) /usr/local/bin/sudoedit

Alle de filer der har ders SUID flag sat.

> Jeg ville kunne forstå hvis disse filer var context:
>
> #> ls -l /usr/local/bin/ | grep --before-context=3 --after-context=3 mbmon
> -r-xr-xr-x 1 root wheel 122157 Feb 24 23:10 libtool13
> -r-xr-xr-x 1 root wheel 8123 Feb 24 23:10 libtoolize13
> -r-xr-xr-x 1 root wheel 205 Nov 18 2005 make_smbpasswd
> -r-sr-xr-x 1 root wheel 39608 Oct 16 2004 mbmon
> -rwxr-xr-x 1 root wheel 9838 Feb 24 23:18 mib2c
> -rwxr-xr-x 1 root wheel 152652 Jun 2 13:51 mpg123
> -r-xr-xr-x 1 root wheel 13208 Oct 16 2004 msgattrib

Af dem er det kun mbmon der har ders SUID bit sat. Jeg gætter på at når du
løber dit filsystem igennem med

find / \( -perm -4000 -fprintf /tmp/suid.txt '%#m %u %p\n' \)

så finder du de filer i den rækkefølge du ser.

Thomas
--

JD (27-06-2006)
Kommentar
Fra : JD


Dato : 27-06-06 13:00

>> Hvordan kan linie 1-3 og 5-7 være context til linie 4?
>> 1) /usr/bin/yppasswd
>> 2) /usr/libexec/pt_chown
>> 3) /usr/libexec/sendmail/sendmail
>> 4) +/- /usr/local/bin/mbmon
>> 5) /usr/local/bin/qpopauth
>> 6) /usr/local/bin/sudo
>> 7) /usr/local/bin/sudoedit
>
> Alle de filer der har ders SUID flag sat.

Okay, det giver lidt mere mening men jeg er nu stadigt ikke helt med.
Men tak for alle input - vi lader den bare ligge her



Thomas S. Iversen (27-06-2006)
Kommentar
Fra : Thomas S. Iversen


Dato : 27-06-06 13:11

>> Alle de filer der har ders SUID flag sat.
>
> Okay, det giver lidt mere mening men jeg er nu stadigt ikke helt med.

Jeg ved godt du har sagt vi skal lade den ligge, men (venligt ment) vil jeg
lige følge den til dørs:

Systemet tjekker alle filer der har SUID flaget sat for ændringer. SUID gør
at programmet kører som SuperUseren og en ændring af en sådanne fil kan
indikerer at nogle eller noget har forsøgt at lægge et program ind der skal
køre som root. En trojansk hest ville jo emulere det originale programs
opførsel, men måske have utilsigtede sideeffekter (spawne en ekstern
applikation der scanner keyboard, disk, whatever). En måde at se hvad der
sker med kritiske SUID filer er, at samle størrelse, modifikitationsdatoer
og lign. ind og så sammenligne disse med en KNOWN GOOD tilstand.

Sammenligningen foregår i det her tilfælde med diff --- måske ikke det mest
velvalgte værktøj. Systemer som tripwire og friends arbejder på samme måde,
men bruger så checksums til at holde øje med filerne.

Thomas
--

JD (27-06-2006)
Kommentar
Fra : JD


Dato : 27-06-06 13:33

>> Okay, det giver lidt mere mening men jeg er nu stadigt ikke helt med.
>
> Systemet tjekker alle filer der har SUID flaget sat for ændringer.

Ahhh, så er jeg helt med. Som jeg forstod det, så var det blot nogle få
context filer (hvordan de så kunne være det), men hvis det er _alle_ SUID
filer på mit system, giver det jo meget god mening. Jeg blev så bare
forvirret over det således, at jeg rent faktisk troede om det kunne være det
modsatte der var sket - at der var sket ændringer i de andre filer. Men...
jeg kan se lyset nu, tak



Henrik Christian Gro~ (27-06-2006)
Kommentar
Fra : Henrik Christian Gro~


Dato : 27-06-06 12:18

"JD" <jonh@doe.xyz> writes:

>>> ændret, hvorfor er dé så med, når resten af programmerne ikke er (f.eks.
>>> qpopper, sshd osv.)? Jeg mener... de bliver vel kun listet, hvis der er
>>> en
>>> ændring?
>>
>> Nej de er med for at give kontekst. Konteksten gør diff enormt meget mere
>> brugbar (til udvikling) end hvis der bare stod at linie 5 var ændret.
>
> Undskyld, men det forstår jeg ikke helt. Det er sikkert mig der ikke har set
> lyset endnu men hvordan er det mere brugbart end hvis der kun stod de
> ændrede linier? Jeg vil da personligt helst kun vide de ting der er ændret
> og ikke kun have et lille udplug af ting som ikke er ændret.

Forestil dig at der er indsat mange linier højere oppe i filen, og der
så er ændret i en linie der forekommer to gange længere nede, så er det
meget nemmere at regne ud hvilken af dem der er ændret udfra kontekst
end ved at holde styr på linienumrene.

..Henrik

--
IQ er et tal med lige så god anvendelseværdi som BogoMIPS.
-- citat Peter Makholm

Peter Makholm (27-06-2006)
Kommentar
Fra : Peter Makholm


Dato : 27-06-06 12:46

"JD" <jonh@doe.xyz> writes:

> Hvordan kan linie 1-3 og 5-7 være context til linie 4?

Fordi det er de linjer der står omkring linje 4.

> Jeg ville kunne forstå hvis disse filer var context:

Kontekst er afhængig af de filer man differ, ikke om at disse filer
indeholder nogle henvisninger til filer der ligger forskellige steder.

--
Peter Makholm | Have you ever felt trapped inside a Klein bottle?
peter@makholm.net |
http://hacking.dk |

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste