Титла: Видимост на процеси & passwd Публикувано от: Akasha в Mar 06, 2008, 13:48 Как да направя така че примерно при един ps aux потребителя да не вижда root-ските както и процесите на останалите потребители а да вижда само процесите на неговия си потребител както примерно при ps x
------------------------------------------------------- xxxxx@xxxxxxx ~$ passwd Changing password for xxxxxx Old password: Incorrect password for `xxxxxx' The password for xxxxxx is unchanged. xxxxx@xxxxxxx ~$ а въведената парола е същата ( в случая 123456 ) ... къде може да е проблема ?!дистро - slack12 ![]() Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 06, 2008, 16:59 За първият въпрос: да.
Като хората това се прави с подходящ пач за ядрото (има няколко варианта на тази тема). Алтернативно:
Върши тази глупост, поне докато не се пръкне нов процес. Ерго или го набиваш в един цикъл (с малко sleep, за да не тормозиш машината), или го слагаш в crontab, но така има опасност да се види някой новопоявил се чужд процес преди да е минал следващият cronjob. Възможно е и да има някаква mount опция за procfs, но не знам. Ако някой знае, да каже ![]() Титла: Видимост на процеси & passwd Публикувано от: bulg в Mar 06, 2008, 17:19 Една малко стара статия може би ще ти влезе в употреба.
Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 06, 2008, 17:29 Гледам много дистра правят нещо подобно , определени команди са налични само като "root" .Командата просто я няма в пътя на потребителя .
Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 06, 2008, 18:02 Това с пътя надали се прави с цел "сигурност", защото би звучало потресаващо глупаво
![]() Между другото, защо няма подтема за сигурността на линукс? Мисля, че идеята е много добра и винаги съм се чудил защо не е реализирана досега.. Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 06, 2008, 20:17 Може и да си поиграеш и с "alias" командата. На потребител
"user" да му сложиш нещо такова: alias ps='ps -u user;' така че каквото и "ps" да пише , да е:ps -u user Абе то може да сложиш всичко , каквото душа ти иска , само в пътя на потребителя трябва да бъде намерено твоята версия първо.Например може да си напишеш цело "конско" "ехо , нямаш право така и така" в bash скрипт с име ps. Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 06, 2008, 20:34 Ммм, това вече си зависи от потребителя, доколко наистина желае да види изхода от ps
![]() Титла: Видимост на процеси & passwd Публикувано от: neter в Mar 06, 2008, 22:03 Едно решение и от мен за първия ти въпрос. Преименувай и премести /bin/ps някъде и така, че шансът потребителят да се усети, че това е оригиналния /usr/ps, да е минимален. При мен например, сред процесите имам един идеален /usr/bin/gnome-session. Бих преместил /bin/ps в папка /usr/lib/ с име "gnome-session" и така ще стане /usr/lib/gnome-session. Когато този процес се изпълни, той ще застане в списъка с това си име. Много малко потребители биха се сетили, че gnome-session няма работа в /usr/lib, а още по-малко биха забелязали, че в пътя седи lib, а не bin. След това си направи един файл и сложи в него това според примера, който дадох
След това го компилирай с shc (ако го нямаш, качи си го)
Полученият файл с разширение ".х" го преименувай на "ps" и го премести в /bin (т.е. да стане /bin/ps) и му задай "chown root:root" и "chmod 755". Колкото по-добре скриеш оригиналния файл, толкова по-сигурен можеш да бъдеш, че потребителите няма да се сетят какво е това. Фалшивият /bin/ps ще бъде компилиран, така че няма да могат да прочетат съдържанието му. Успех ![]() По втория ти въпрос. Откъде си сигурен, че не бъркаш настоящата парола на потребителя? Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 06, 2008, 22:25 Разбира се , това не е само за сигурност , може да служи и за улеснение на потрбителите:
Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 06, 2008, 23:18 Проблемите със секюритито трябва да се решават по-брутално мисля аз
![]() Иначе ще възникват следните моменти: 1) top, pstree, донякъде pidof могат да разкрият малко или много същите неща 2) /proc продължава да си е достъпен - човек може да си напише собствен top ако иска ![]() 3) Ако целта е експлицитно да няма ps, един потребител спокойно може да си го качи през scp и да го изпълни (примерно). Ясно е че всичко зависи от потребителя, но решавайки проблема генерално просто се презастраховаш от по-умни потребители (или от такива, откраднали акаунта им) ![]() Титла: Видимост на процеси & passwd Публикувано от: neter в Mar 06, 2008, 23:20 //offtopic
Хахахаха ![]() ![]() //ontopic Ясно е, че сигурността и защитата във всяко едно отношение, е игра на "кой знае повече". Всяка защита може да бъде преодоляна и всяка дупка в защитата може да бъде попълнена. Затова човек никога не трябва да се доверява на готови решения относно сигурността, а трябва да си изгради защитата сам според конкретната ситуация, организация в системата и конкретните хора и външни машини, за които ще действа. Затова, Akasha, не използвай дусловно и единствено само едно от предложенията, а ги използвай вкупом като основа за изграждане на твоята защита, като добавиш и още идеи от нета и дори нещо свое ![]() Титла: Видимост на процеси & passwd Публикувано от: tarator в Mar 06, 2008, 23:35 Абе господа,надявам се, че не сте системни администратори някъде, че като гледам какви "гениални" идеи давата чак ме хваща страх.
![]() Криене на ps, преименуването му, правене на alias... Малоумни ли сте? А какво ще попречи на потребителя да си копира ps от друга система или просто да си го компилира? Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 06, 2008, 23:56 Разбира се , въпроса не е в "ps" или други от този род , въпроса е може ли да забраним на потребител да чете от
" /proc" ? Доста програми зависят от това , дали няма да блокитат? Нямам идея обаче какъв би бил ефекта. Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 06, 2008, 23:59 Абе имам една гениална (хаха) идея
![]() Гледам: root@debian:/# ldd /bin/ps linux-gate.so.1 => (0xffffe000) libproc-3.2.6.so => /lib/libproc-3.2.6.so (0xb7f3e000) libc.so.6 => /lib/libc.so.6 (0xb7df1000) /lib/ld-linux.so.2 (0xb7f79000) Ми най-лесното да вземем да направим нещо от сорта на: chmod -r /lib/libproc-3.2.6.so И нека да си качва! Ей така слагаме още едно ниво на сигурност! Щото не се знае дали лошият потребител прави разлика между static/dynamic-built байнърита и може и да не се сети. Сега че може да си пусне един файл мениджър (mc примерно) и да си браузва из /proc е съвсем отделен въпрос ![]() Какво ще кажете за тази прекрасна идея ![]() Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 07, 2008, 00:03
Може. В повечето случаи няма да му се налага да чете оттам. Има гранични случаи, но по принцип не е проблем. Освен това не е казано че не трябва въобще да чете. Може да чете неговите си неща, въпросът е да не чете чуждите. Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 07, 2008, 00:06 Не е лошо като идея , но и с едно с едно просто разглеждане да директорията /proc си е достатъчно , за да се разбере какво е стартирано:
/proc/2061/task/2061/exe->/usr/sbin/hald Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 07, 2008, 00:13 Като идея е пълна олигофрения, хич не бях сериозен
![]() Как и да е, беше си тролщина ![]() Титла: Видимост на процеси & passwd Публикувано от: neter в Mar 07, 2008, 00:54 //леко офф
tarator, ами системен администратор съм и да ти кажа, живот си живея, защото до моите системи достъп имам само аз. Потребителитe, на които им трябва ssh съм ги chroot-нал в техни си папки, където съм им дал само това, което аз искам, а потребителите нямат думата. Локални потребители нямам и дърпам по една молитва всеки ден никога повече да не ми се налага да се занимавам с такива. Да се занимавам само със щенията на машините е къде къде по-приятно от безбройните глупости на потребителите. Та... при невероятните експерименти на потребителите се пръкват и невероятни предложения за защита. Да, съгласен съм, че дадените предложения са комични, но как да решиш тотално даден проблем, който се явява заради човешки действия, като самите системи за измислени от хора? На всяко действие може да се измисли противодействие. Затова и дадените предложения не могат да се приемат за чиста монета. Човек трябва сам да си изгради защита, според потребителите си и тя да е изградена не на принципа "тотално решение", защото такова няма щом става дума за потребители, а на принципа "колко знаят моите потребители и как на мен ще ми е най-лесно за управление" ![]() Титла: Видимост на процеси & passwd Публикувано от: tarator в Mar 07, 2008, 03:11 neter, не, на всяко действие _не може_ да се намери противодействие. В случая решението е да се пачне ядрото. Нищо друго не помага.
Титла: Видимост на процеси & passwd Публикувано от: ivo1204 в Mar 07, 2008, 03:54
Какво да му се пачва на ядрото ? На ядрото въобще не му трябва "/proc" директорията , нито proc-fs. Това се е само да даде информация на потребителските програми . Ако не искаш , има си опция : File systems -> Pseudo filesystems ->/proc file system support (PROC_FS) P.P Отделно много неща могат да /или не се виждат там , с отделни опции . И едва ли това е някаква дупка на сигурността , това е една виртуална директория , която си е под контрола на ядрото , нищо не може да я повреди . То няма и какво , тя е виртуална. Вчера ми се наложи да направя chroot в компилирана с buildroot среда , да видя дали работи ( крос - компилирана , на х86_64 за х86 ) . Оказа се , командите на busybox ги има , ама не работят .Очаквах да са връзки към busybox. Да ама бяха линкове към /proc/.../ , и проработиха чак като монтирах /proc. Явно "/proc" има и друго предназначение , освен юзерите да гледат какво прави "root". Макар че действително положението е малко комично ?! Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 07, 2008, 09:53 Горе-долу такъв patch:
Става въпрос за /path_to_linux_src/fs/proc/base.c Това нещо от сорта и според мен е най-доброто решение на проблема ![]() Титла: Видимост на процеси & passwd Публикувано от: Akasha в Mar 07, 2008, 10:35 Такамз ..
![]() ![]() ![]() P.S. Ако може по първият проблем отговори без "Прекомпилиране на ядро" смисъл .. не искам да омажа ядрото ![]() Титла: Видимост на процеси & passwd Публикувано от: triplek в Mar 07, 2008, 10:52 Паролата за ssh login може да е различна от root паролата.
![]() Титла: Видимост на процеси & passwd Публикувано от: gat3way в Mar 07, 2008, 11:12 Е ти защо реши, че като не може да чете в proc няма да "му вървят" процесите?
|