Portál AbcLinuxu, 24. dubna 2024 13:46


Dotaz: Datum a cas udaj v .bash_history

22.11.2004 17:02 Aloner | skóre: 24 | blog: Aloner | Praha
Datum a cas udaj v .bash_history
Přečteno: 288×
Odpovědět | Admin
Zdravim
Potreboval bych nejakou utilitku, ktera by dokazala zapisovat historii prikazu uzivatele (jako v .bash_history), ale byla by tam navic informace o datumu a case zadani prikazu.
Napriklad:
22.11.2004 16:58:24 cat /etc/passwd
22.11.2004 16:59:11 cat /etc/group
...

Existuje neco takoveho ?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.11.2004 17:08 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud nechceš spíš process accounting, ale opravdu záznam příkazů bashe, tak si ho hackni, tohle by mělo být snadné.
22.11.2004 17:12 Aloner | skóre: 24 | blog: Aloner | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Potrebuju vedet nejen jake dany uzivatel provadel prikazy, ale take presne v jaky den a hodinu, nic vic. Proste mit treba soubor '.bash_history2' a v nem to same jako v '.bash_history', ale rozsirene o udaj datumu a casu.
22.11.2004 21:16 oron | skóre: 27
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Pokud nechceš spíš process accounting, ale opravdu záznam příkazů bashe, tak si ho hackni, tohle by mělo být snadné.
22.11.2004 17:29 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Odpovědět | | Sbalit | Link | Blokovat | Admin
Bud nectes dostatecne podrobne manualovy stranky, nebo nemas dostatecne novou verzi bash. Ve verzi 3.0 jde nastavit hodnotu promenne HISTTIMEFORMAT, cimz si zajistis to co chces. Takze upgradovat. A nebo muzes hackovat jak navrhl pan Necas ;-))
22.11.2004 17:37 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
A hele, on už to do 3.0 někdo dohackoval ;-)

Ovšem z pohledu uživatele je obrana triviální: unset HISTFILE v ~/.profile.

BSD process accounting, který jsem chtěl navrhnout, bohužel nezaznamenává argumenty příkazů (nemluvě o celých rourách, jak je napíšeš v shellu).
22.11.2004 18:08 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
No tak to jde samozrejme o to, jestli to chce tazatel pro sebe jako jakousi kontrolu/denik, nebo jako dukazni material proti elektronickym vyvrhelum. V druhem pripade mu muze byt jedno jestli tam bude datum nebo ne, kdyz historii dotycny user uplne zrusi...
22.11.2004 20:12 Aloner | skóre: 24 | blog: Aloner | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Ano, chci to jako dukazni material proti "elektronickym vyvrhelum", resp. potrebuju vedet, kdo (useri a zejmena rooti) a kdy se v necem rypal, aby bylo mozne dohledat casovou souvislost s nekterymi havariemi serveru apod. Problematika vymazani .bash_history je vyresena tak, ze kdo tak ucini je automaticky "vinen" ;-) Kazdopadne zkusim vyuzit funkcionalitu HISTTIMEFORMAT. Diky vsem za pomoc.
22.11.2004 20:22 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Tak na to asi zapomeň, to lze obejít tolika způsoby... Pro začátek úplně stačí, co budeš dělat s unset HISTFILE?
22.11.2004 20:44 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history

Tohle je samozrejme zbytecny usili. Pro koho je problem si historii zeditovat a upravit time stamps? Pokud je to pro nekoho problem, tak ta sama osoba asi nebude schopna nejakym zbusobem uskodit (pokud ji nekdo neda rootovsky prava).

Resenim by byla nejaka system-wide historie, kterou pry (cetl jsem) nektery systemy pouzivaji. U bashe tezko rict, neslo by to nejak udelat pres readline kterou vyuziva? Mysleno aznamenavat vsechno co useri pisou namapovanim klaves (pres inputrc, aby se nemusel clovek hrabat v kodu).

22.11.2004 21:04 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
To je k ničemu. Musel bys opravdu logovat, co přijde po terminálu, ne readline, jinak si spustím perl (readline vůbec nepoužívá) a udělám cokoli. Takže kompletní logování komunikace je jedna věc, to by šlo, i když kdo se v tom pak má vyznat.

Spíš potřebuješ něco jako BSD process accounting, ale lepší. Určitě lze něco vygooglit, co jsem viděl já, tak zrovna neumělo ani logovat příkazy s argumenty, ale učitě něco existuje.

Pořád se ti snadno podaří být nenápadný -- stačí vytvořit/přenést binárku s názvem typu cat, která může dělat cokoli.

Takže auditovat syscally, používat nějaký chytrý LSM...
22.11.2004 21:17 oron | skóre: 27
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
a sakra kde som to dal ...
nieco taketo
http://sourceforge.net/projects/rootsh/
25.11.2004 00:39 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
jak funguje BSD process accouting nevím, ale třeba grsecurity (to je asi ten LSM, co?) umí logovat execve() včetně parametrů...
23.11.2004 02:45 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ahoj,

treba by Vam pomoh' tento clanek na BASH prompt. Ten clanek je ale silenej bastl, text nesouhlasi se screenshotama a podobne, tak neprijdete k nejakemu soku prosim :-)

http://vcp.ligatura.org/index.php?style=1&body=linux#bash.prompt

Co by Vas mohlo zajimat je uplne na konci toho clanecku, ale mozna je to cely uplna blbost. Ale pokud je pravda, ze se promenna PS1 nastavuje pri startu BASHe v .bashrc a pak ji uz za behu nelze zmenit (tedy lze, ale snad bez efektu na instanci BASHe, ze ktere to delame), nevyplyva z toho mimojine, ze i kdyby treba nekdo zkousel neco jako `PS1="" /bin/bash` a tim se snazil odstranit nase nastaveni promenne PS1, ze ma proste smulu, protoze pri startu BASHe se zas nase mila PS1 opet nacte z .bashrc?

Jestli toto plati, tak do PS1 v ~/.bashrc proste nacpete nejaky sikovny logovani a na soubor $HOME/.bashrc date restriktivni prava a taky nezapomenete zajistit, aby se bash vzdy spustil s parametrem --rcfile na prislusny .bashrc soubor (dejte do toho ~/.bashrc prislusnej alias). A provedte to vsem uzivatelum i rootum... ;-) A kdyz se nekdo pokusi spustit BASH primo pres /bin/bash --rcfile, tak to stejne budete mit zalogovany :-)

Ale jak rikam, mozna je to silenej bastl a mozna v tom clanku a hlavne ted tady silene mlzim :-) Mha prede mnou, mha za mnou.
23.11.2004 02:49 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
BTW: To co jsem ted popsal jsem opravdu sam jeste nezkousel. Je to jen neuronalni mlha...
23.11.2004 03:00 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
No, necetl jsem to cely (radsi), ale to co dotycny pise o PS1 je totalni *****. Dyt si to sam zkus, v bashi napis
PS1='WTF? '
a budes se divit...
23.11.2004 13:43 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Ahoj,

viz. moje odpoved Yetimu nize:

PS1='WTF? ' samosebou neudela vubec nic. Kdybyste ten clanek cetl, tak byste se podival i do souboru k clanku prilozenemu a videl byste, ze PS1 se nastavuje PROMT_COMMAND, a proto se nastaveni promenne PS1 neprojevi.

Zaver meho clanku byla ovsem blbost, protoze tu promennou PROMT_COMMAND, ve ktere je teprve ta funkce, ktera nastavi PS1 si muze kdokoliv za chodu zmenit. Na to jsem zapomel. Omlouvam se za mystifikaci i Vam (a vsem ostatnim).
23.11.2004 13:51 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
No, mas v tom peknej bordel (at uz na zaklade toho clanku nebo jinyho zdroje). Co takhle se spis spolehnout na manualovy stranky nebo oficialni dokumentaci, nez na nejaky clanek?
23.11.2004 09:33 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
No, to je teda blud (ten článek). A i kdyby to byla sebevíc pravda, tak to nijan neřeší problém.
23.11.2004 13:28 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Ahoj,

ten clanek pojednava o nastaveni barevneho priserneho promptu a v tomto ohledu snad "bludny" neni, protoze me ten barevnej prompt proste funguje. S tim nic nenadelate :-)

Aha, uz mi to doslo. Problem je, ze jsem jaksi zapomel, ze nenastavuju primarne PS1, ale PROMPT_COMMAND, a tu si kazdej muze menit jak chce ;-)

Omlouvam se za mystifikaci, ted hned ten clanek jdu opravit.

Dekuji.

PS: Tomudle se rika "mozkovej prd", no taky jsem to psal s hubou na stole (unavou) :-)
23.11.2004 13:46 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history

Bludnej je, nebot si protireci. Konkretne: rika, ze PS1 se neda uzivatelem prenastavit coz je v rozporu s tim, ze ma barevnej displej jakej se uzivateli zlibi.

BTW, PROMPT_COMMAND dela neco jinyho nez PS1 + obe promenne jsou na stejne urovni, kazdy uzivatel si je muze menit jak chce

23.11.2004 14:01 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
PS1 nelze prenastavit, kdyz je nastavovano funkci PROMPT_COMMAND, viz. http://vcp.ligatura.org/data/articles/files/bash_prompt

K nastaveni PS1 je pak nejprve potreba nastavit PROMPT_COMMAND na nejakej default a pak teprve muzete prenastavit PS1, protoze ho jiz PROMPT_COMMAND nebude menit.

V prispevku jsem zapomel na to, ze to delam pres tu funkci PROMPT_COMMAND, z cehoz vznikl cely omyl. Proste jsem to zkousel a zjistil, ze mi PS1 nejde nastavit, ale zapomel jsem na to proc tomu tak je :-) (totiz, ze mi to ta funkce PROMPT_COMMAND vzdy prepise...)

Stane se, no! Na webu jsem ten clanek uz opravil, takze moje puvodni odpoved do tohoto threadu je jiz neaktualni...
23.11.2004 14:53 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Jo pokud je to vypada nejak takhle
PROMPT_COMMAND='echo "XYZ"; PS1=ZYX'
tak to potom jo. To mate pravdu. I kdyz castecne: PS1 jde i v tom pripade nastavit, ale ten PROMPT_COMMAND ji hned zase prebije. No, ale uprime receno, co je kterymu adminovi do toho, jaky mam barvy promptu?
23.11.2004 15:59 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
OK. Já si třeba PROMPT_COMMAND normálně nastavuji (mimochodem taky přepisuje PS1, ale po mém), a tudíž bych si takových snah ani nevšiml...
24.11.2004 01:16 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Datum a cas udaj v .bash_history
Jejda jejda, cloveku se to nad ranem trochu pomicha v hlave, a kdyz se snazi vysvetlit jednoduse, ze se mu to proste asi pomichalo v hlave, protoze mel tu hloupou ideu, ze by snad mohlo jit pomoci nastaveni jedne promenne v shellu vyresit nejakej problem, ale vono to nejde, protoze mel clovek zrovna v hlave totalni gulas a do uvah se mu michaly barevne sny o buhvicem, a kdyz se nadto jeste snazi za tu troufalost omluvit a uvest vse na pravou miru, tak do nej furt sijou a furt sijou a furt sijou :-) Slibuju, ze priste budu do fora odpovidat az pote, co se probudim, dam si kafe a mozna si i zacvicim ... --
MJF

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.