Да: Chromify-OSD.
Это можно установить из Chromify-OSD .
Чтобы установить его , просто зайдите в интернет-магазин и нажмите кнопку «Добавить в Chrome» - все остальное.
Чтобы использовать его, вам, вероятно, потребуется перезапустить Chrome, в этот момент он должен работать .
Все ошибки должны быть отправлены на страницу проекта launchpad.net - для получения дополнительной информации об ошибках в отчетах, посмотрите на этот вопрос: Как сообщить об ошибке?
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь.
Демон Linux Audit сделает трюк.
sudo auditctl -w /path/to/somefile -p wra
, а затем
ausearch -f /path/to/somefile -i
Наконец, я нашел ответ здесь .
Демон Linux Audit сделает трюк.
sudo auditctl -w / path / to / somefile -p wra
, а затем
ausearch -f / path / to / somefile -i
Наконец, я нашел ответ здесь .
Демон Linux Audit сделает трюк.
sudo auditctl -w / path / to / somefile -p wra
, а затем
ausearch -f / path / to / somefile -i
Наконец, я нашел ответ здесь .
Демон Linux Audit сделает трюк.
sudo auditctl -w / path / to / somefile -p wra
, а затем
ausearch -f / path / to / somefile -i
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу sysdig, поскольку ответы выше стареют. Пусть отобразится pid и name процессов, которые удаляют файл /tmp/test. Сначала мы создаем файл с touch /tmp/test. Затем мы запускаем sysdig со следующим фильтром:
$ sudo sysdig -p'%proc.pid,%proc.name' '(evt.type=unlinkat and (evt.arg.name=test or evt.arg.name=/tmp/test)) or (evt.type=unlink and evt.arg.path=/tmp/test)'
unlinkat(2) требует фильтра or, если путь (например, evt.arg.name) может быть относительным. Для обработки как unlink (который вызывает unlink(2)), так и rm (который вызывает unlinkat(2) в своей версии GNU), фильтр должен соответствовать обоим системам.
sysdig должен работать, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink /tmp/test
$ touch /tmp/test
$ rm /tmp/test
$ cd /tmp; touch test; rm test
Он выведет такой вывод:
11380,unlink
11407,rm
11662,rm
Пожалуйста, обратитесь к sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig:
description = "displays processes that delete a file"
short_description = "spy file deletion"
category = "files"
args =
{
{
name = "path",
description = "the path of the file to monitor",
argtype = "string"
},
}
function on_set_arg(name, val)
path = val
return true
end
function on_init()
local filename = path
for i in string.gmatch(path, "[^/]+") do
filename = i
end
chisel.set_event_formatter("%proc.pid\t%proc.name")
chisel.set_filter(
"(evt.type=unlinkat and (evt.arg.name=" .. path .. " or \
evt.arg.name=" .. filename .. ")) or \
(evt.type=unlink and evt.arg.path=" .. path .. ")")
return true
end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить сценарий lua в файл spy_deletes.lua внутри каталога и выполнить sysdig в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl вы увидите это как:
Category: files
---------------
spy_deletes spy file deletion
Теперь вы можете называть его:
$ sudo sysdig -c spy_deletes /tmp/test
И в другом типе терминала:
$ touch test; unlink test
$ touch test; unlink /tmp/test
$ touch test; rm test
$ touch test; rm /tmp/test
Он выведет:
16025 unlink
16033 unlink
16041 rm
16049 rm
Фильтр unlinkat заслуживает того, чтобы быть более точным и соответствовать абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat(2).
Позвольте мне предложить альтернативу sysdig, поскольку ответы выше стареют. Пусть отобразится pid и name процессов, которые удаляют файл /tmp/test. Сначала мы создаем файл с touch /tmp/test. Затем мы запускаем sysdig со следующим фильтром:
$ sudo sysdig -p'%proc.pid,%proc.name' '(evt.type=unlinkat and (evt.arg.name=test or evt.arg.name=/tmp/test)) or (evt.type=unlink and evt.arg.path=/tmp/test)'
unlinkat(2) требует фильтра or, если путь (например, evt.arg.name) может быть относительным. Для обработки как unlink (который вызывает unlink(2)), так и rm (который вызывает unlinkat(2) в своей версии GNU), фильтр должен соответствовать обоим системам.
sysdig должен работать, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink /tmp/test
$ touch /tmp/test
$ rm /tmp/test
$ cd /tmp; touch test; rm test
Он выведет такой вывод:
11380,unlink
11407,rm
11662,rm
Пожалуйста, обратитесь к sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig:
description = "displays processes that delete a file"
short_description = "spy file deletion"
category = "files"
args =
{
{
name = "path",
description = "the path of the file to monitor",
argtype = "string"
},
}
function on_set_arg(name, val)
path = val
return true
end
function on_init()
local filename = path
for i in string.gmatch(path, "[^/]+") do
filename = i
end
chisel.set_event_formatter("%proc.pid\t%proc.name")
chisel.set_filter(
"(evt.type=unlinkat and (evt.arg.name=" .. path .. " or \
evt.arg.name=" .. filename .. ")) or \
(evt.type=unlink and evt.arg.path=" .. path .. ")")
return true
end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить сценарий lua в файл spy_deletes.lua внутри каталога и выполнить sysdig в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl вы увидите это как:
Category: files
---------------
spy_deletes spy file deletion
Теперь вы можете называть его:
$ sudo sysdig -c spy_deletes /tmp/test
И в другом типе терминала:
$ touch test; unlink test
$ touch test; unlink /tmp/test
$ touch test; rm test
$ touch test; rm /tmp/test
Он выведет:
16025 unlink
16033 unlink
16041 rm
16049 rm
Фильтр unlinkat заслуживает того, чтобы быть более точным и соответствовать абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat(2).
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу с sysdig , поскольку ответы выше стареют. Пусть отображаются имена pid
и
процессов, удаляющих файл / tmp / test
. Сначала мы создаем файл с помощью touch / tmp / test
. Затем мы запускаем sysdig
со следующим фильтром:
$ sudo sysdig -p '% proc.pid,% proc.name' '(evt.type = unlinkat и (evt.arg.name = test или evt.arg.name = / tmp / test)) или (evt.type = unlink и evt.arg.path = / tmp / test) '
unlinkat (2)
требует фильтр или
, если путь (например, evt.arg.name
) может относительный . Для обработки как unlink
(который вызывает unlink (2)
) и rm
(который вызывает unlinkat (2)
в его версия GNU), фильтр должен соответствовать обоим компьютерам.
sysdig
должен запускаться, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink / tmp / test $ touch / tmp / test $ rm / tmp / test $ cd / tmp; сенсорный тест; rm test
Он отобразит такой вывод:
11380, unlink 11407, rm 11662, rm
Пожалуйста, обратитесь к руководству пользователя sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig
:
description = "отображает процессы, которые удаляют файл" short_description = "удаление шпионского файла" category = " файлы "args = {{name =" path ", description =" путь к файлу для мониторинга ", argtype =" string "},} function on_set_arg (name, val) path = val return true end function on_init () local filename = путь для i в string.gmatch (путь, "[^ /] +") do filename = i end chisel.set_event_formatter ("% proc.pid \ t% proc.name") chisel.set_filter ("(evt. type = unlinkat и (evt.arg.name = ".. path .." или \ evt.arg.name = ".. filename ..")) или \ (evt.type = unlink и evt.arg.path = ".. path ..") ") return true end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить скрипт lua в файл spy_deletes.lua
внутри каталога и выполнить sysdig
в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl
вы увидите это как:
Категория: файлы --------------- spy_deletes spy file удаление
Теперь вы можете называть это:
$ sudo sysdig -c spy_deletes / tmp / test
И в другом терминальном типе:
$ touch test; тест бесконтактного теста $ touch; disable / tmp / test $ touch test; тест rm test $ touch; rm / tmp / test
Он выведет:
16025 unlink 16033 unlink 16041 rm 16049 rm
фильтр uninkat
заслуживает более точной и только соответствует абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat (2)
.
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу sysdig, поскольку ответы выше стареют. Пусть отобразится pid и name процессов, которые удаляют файл /tmp/test. Сначала мы создаем файл с touch /tmp/test. Затем мы запускаем sysdig со следующим фильтром:
$ sudo sysdig -p'%proc.pid,%proc.name' '(evt.type=unlinkat and (evt.arg.name=test or evt.arg.name=/tmp/test)) or (evt.type=unlink and evt.arg.path=/tmp/test)'
unlinkat(2) требует фильтра or, если путь (например, evt.arg.name) может быть относительным. Для обработки как unlink (который вызывает unlink(2)), так и rm (который вызывает unlinkat(2) в своей версии GNU), фильтр должен соответствовать обоим системам.
sysdig должен работать, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink /tmp/test
$ touch /tmp/test
$ rm /tmp/test
$ cd /tmp; touch test; rm test
Он выведет такой вывод:
11380,unlink
11407,rm
11662,rm
Пожалуйста, обратитесь к sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig:
description = "displays processes that delete a file"
short_description = "spy file deletion"
category = "files"
args =
{
{
name = "path",
description = "the path of the file to monitor",
argtype = "string"
},
}
function on_set_arg(name, val)
path = val
return true
end
function on_init()
local filename = path
for i in string.gmatch(path, "[^/]+") do
filename = i
end
chisel.set_event_formatter("%proc.pid\t%proc.name")
chisel.set_filter(
"(evt.type=unlinkat and (evt.arg.name=" .. path .. " or \
evt.arg.name=" .. filename .. ")) or \
(evt.type=unlink and evt.arg.path=" .. path .. ")")
return true
end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить сценарий lua в файл spy_deletes.lua внутри каталога и выполнить sysdig в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl вы увидите это как:
Category: files
---------------
spy_deletes spy file deletion
Теперь вы можете называть его:
$ sudo sysdig -c spy_deletes /tmp/test
И в другом типе терминала:
$ touch test; unlink test
$ touch test; unlink /tmp/test
$ touch test; rm test
$ touch test; rm /tmp/test
Он выведет:
16025 unlink
16033 unlink
16041 rm
16049 rm
Фильтр unlinkat заслуживает того, чтобы быть более точным и соответствовать абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat(2).
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу sysdig, поскольку ответы выше стареют. Пусть отобразится pid и name процессов, которые удаляют файл /tmp/test. Сначала мы создаем файл с touch /tmp/test. Затем мы запускаем sysdig со следующим фильтром:
$ sudo sysdig -p'%proc.pid,%proc.name' '(evt.type=unlinkat and (evt.arg.name=test or evt.arg.name=/tmp/test)) or (evt.type=unlink and evt.arg.path=/tmp/test)'
unlinkat(2) требует фильтра or, если путь (например, evt.arg.name) может быть относительным. Для обработки как unlink (который вызывает unlink(2)), так и rm (который вызывает unlinkat(2) в своей версии GNU), фильтр должен соответствовать обоим системам.
sysdig должен работать, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink /tmp/test
$ touch /tmp/test
$ rm /tmp/test
$ cd /tmp; touch test; rm test
Он выведет такой вывод:
11380,unlink
11407,rm
11662,rm
Пожалуйста, обратитесь к sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig:
description = "displays processes that delete a file"
short_description = "spy file deletion"
category = "files"
args =
{
{
name = "path",
description = "the path of the file to monitor",
argtype = "string"
},
}
function on_set_arg(name, val)
path = val
return true
end
function on_init()
local filename = path
for i in string.gmatch(path, "[^/]+") do
filename = i
end
chisel.set_event_formatter("%proc.pid\t%proc.name")
chisel.set_filter(
"(evt.type=unlinkat and (evt.arg.name=" .. path .. " or \
evt.arg.name=" .. filename .. ")) or \
(evt.type=unlink and evt.arg.path=" .. path .. ")")
return true
end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить сценарий lua в файл spy_deletes.lua внутри каталога и выполнить sysdig в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl вы увидите это как:
Category: files
---------------
spy_deletes spy file deletion
Теперь вы можете называть его:
$ sudo sysdig -c spy_deletes /tmp/test
И в другом типе терминала:
$ touch test; unlink test
$ touch test; unlink /tmp/test
$ touch test; rm test
$ touch test; rm /tmp/test
Он выведет:
16025 unlink
16033 unlink
16041 rm
16049 rm
Фильтр unlinkat заслуживает того, чтобы быть более точным и соответствовать абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat(2).
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу с sysdig , поскольку ответы выше стареют. Пусть отображаются имена pid
и
процессов, удаляющих файл / tmp / test
. Сначала мы создаем файл с помощью touch / tmp / test
. Затем мы запускаем sysdig
со следующим фильтром:
$ sudo sysdig -p '% proc.pid,% proc.name' '(evt.type = unlinkat и (evt.arg.name = test или evt.arg.name = / tmp / test)) или (evt.type = unlink и evt.arg.path = / tmp / test) '
unlinkat (2)
требует фильтр или
, если путь (например, evt.arg.name
) может относительный . Для обработки как unlink
(который вызывает unlink (2)
) и rm
(который вызывает unlinkat (2)
в его версия GNU), фильтр должен соответствовать обоим компьютерам.
sysdig
должен запускаться, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink / tmp / test $ touch / tmp / test $ rm / tmp / test $ cd / tmp; сенсорный тест; rm test
Он отобразит такой вывод:
11380, unlink 11407, rm 11662, rm
Пожалуйста, обратитесь к руководству пользователя sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig
:
description = "отображает процессы, которые удаляют файл" short_description = "удаление шпионского файла" category = " файлы "args = {{name =" path ", description =" путь к файлу для мониторинга ", argtype =" string "},} function on_set_arg (name, val) path = val return true end function on_init () local filename = путь для i в string.gmatch (путь, "[^ /] +") do filename = i end chisel.set_event_formatter ("% proc.pid \ t% proc.name") chisel.set_filter ("(evt. type = unlinkat и (evt.arg.name = ".. path .." или \ evt.arg.name = ".. filename ..")) или \ (evt.type = unlink и evt.arg.path = ".. path ..") ") return true end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить скрипт lua в файл spy_deletes.lua
внутри каталога и выполнить sysdig
в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl
вы увидите это как:
Категория: файлы --------------- spy_deletes spy file удаление
Теперь вы можете называть это:
$ sudo sysdig -c spy_deletes / tmp / test
И в другом терминальном типе:
$ touch test; тест бесконтактного теста $ touch; disable / tmp / test $ touch test; тест rm test $ touch; rm / tmp / test
Он выведет:
16025 unlink 16033 unlink 16041 rm 16049 rm
фильтр uninkat
заслуживает более точной и только соответствует абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat (2)
.
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу sysdig, поскольку ответы выше стареют. Пусть отобразится pid и name процессов, которые удаляют файл /tmp/test. Сначала мы создаем файл с touch /tmp/test. Затем мы запускаем sysdig со следующим фильтром:
$ sudo sysdig -p'%proc.pid,%proc.name' '(evt.type=unlinkat and (evt.arg.name=test or evt.arg.name=/tmp/test)) or (evt.type=unlink and evt.arg.path=/tmp/test)'
unlinkat(2) требует фильтра or, если путь (например, evt.arg.name) может быть относительным. Для обработки как unlink (который вызывает unlink(2)), так и rm (который вызывает unlinkat(2) в своей версии GNU), фильтр должен соответствовать обоим системам.
sysdig должен работать, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink /tmp/test
$ touch /tmp/test
$ rm /tmp/test
$ cd /tmp; touch test; rm test
Отображает такой вывод:
11380,unlink
11407,rm
11662,rm
Пожалуйста, обратитесь к sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig:
description = "displays processes that delete a file"
short_description = "spy file deletion"
category = "files"
args =
{
{
name = "path",
description = "the path of the file to monitor",
argtype = "string"
},
}
function on_set_arg(name, val)
path = val
return true
end
function on_init()
local filename = path
for i in string.gmatch(path, "[^/]+") do
filename = i
end
chisel.set_event_formatter("%proc.pid\t%proc.name")
chisel.set_filter(
"(evt.type=unlinkat and (evt.arg.name=" .. path .. " or \
evt.arg.name=" .. filename .. ")) or \
(evt.type=unlink and evt.arg.path=" .. path .. ")")
return true
end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить сценарий lua в файл spy_deletes.lua внутри каталога и выполнить sysdig в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl вы увидите это как:
Category: files
---------------
spy_deletes spy file deletion
Теперь вы можете называть его:
$ sudo sysdig -c spy_deletes /tmp/test
И в другом типе терминала:
$ touch test; unlink test
$ touch test; unlink /tmp/test
$ touch test; rm test
$ touch test; rm /tmp/test
Он выведет:
16025 unlink
16033 unlink
16041 rm
16049 rm
Фильтр unlinkat заслуживает того, чтобы быть более точным и соответствовать абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat(2).
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof.
Как только файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof
.
Когда файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу с sysdig , поскольку ответы выше стареют. Пусть отображаются имена pid
и
процессов, удаляющих файл / tmp / test
. Сначала мы создаем файл с помощью touch / tmp / test
. Затем мы запускаем sysdig
со следующим фильтром:
$ sudo sysdig -p '% proc.pid,% proc.name' '(evt.type = unlinkat и (evt.arg.name = test или evt.arg.name = / tmp / test)) или (evt.type = unlink и evt.arg.path = / tmp / test) '
unlinkat (2)
требует фильтр или
, если путь (например, evt.arg.name
) может относительный . Для обработки как unlink
(который вызывает unlink (2)
) и rm
(который вызывает unlinkat (2)
в его версия GNU), фильтр должен соответствовать обоим компьютерам.
sysdig
должен запускаться, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink / tmp / test $ touch / tmp / test $ rm / tmp / test $ cd / tmp; сенсорный тест; rm test
Он отобразит такой вывод:
11380, unlink 11407, rm 11662, rm
Пожалуйста, обратитесь к руководству пользователя sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig
:
description = "отображает процессы, которые удаляют файл" short_description = "удаление шпионского файла" category = " файлы "args = {{name =" path ", description =" путь к файлу для мониторинга ", argtype =" string "},} function on_set_arg (name, val) path = val return true end function on_init () local filename = путь для i в string.gmatch (путь, "[^ /] +") do filename = i end chisel.set_event_formatter ("% proc.pid \ t% proc.name") chisel.set_filter ("(evt. type = unlinkat и (evt.arg.name = ".. path .." или \ evt.arg.name = ".. filename ..")) или \ (evt.type = unlink и evt.arg.path = ".. path ..") ") return true end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить скрипт lua в файл spy_deletes.lua
внутри каталога и выполнить sysdig
в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl
вы увидите это как:
Категория: файлы --------------- spy_deletes spy file удаление
Теперь вы можете называть это:
$ sudo sysdig -c spy_deletes / tmp / test
И в другом терминальном типе:
$ touch test; тест бесконтактного теста $ touch; disable / tmp / test $ touch test; тест rm test $ touch; rm / tmp / test
Он выведет:
16025 unlink 16033 unlink 16041 rm 16049 rm
фильтр uninkat
заслуживает более точной и только соответствует абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat (2)
.
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof
.
Когда файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу с sysdig , поскольку ответы выше стареют. Пусть отображаются имена pid
и
процессов, удаляющих файл / tmp / test
. Сначала мы создаем файл с помощью touch / tmp / test
. Затем мы запускаем sysdig
со следующим фильтром:
$ sudo sysdig -p '% proc.pid,% proc.name' '(evt.type = unlinkat и (evt.arg.name = test или evt.arg.name = / tmp / test)) или (evt.type = unlink и evt.arg.path = / tmp / test) '
unlinkat (2)
требует фильтр или
, если путь (например, evt.arg.name
) может относительный . Для обработки как unlink
(который вызывает unlink (2)
) и rm
(который вызывает unlinkat (2)
в его версия GNU), фильтр должен соответствовать обоим компьютерам.
sysdig
должен запускаться, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink / tmp / test $ touch / tmp / test $ rm / tmp / test $ cd / tmp; сенсорный тест; rm test
Он отобразит такой вывод:
11380, unlink 11407, rm 11662, rm
Пожалуйста, обратитесь к руководству пользователя sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig
:
description = "отображает процессы, которые удаляют файл" short_description = "удаление шпионского файла" category = " файлы "args = {{name =" path ", description =" путь к файлу для мониторинга ", argtype =" string "},} function on_set_arg (name, val) path = val return true end function on_init () local filename = путь для i в string.gmatch (путь, "[^ /] +") do filename = i end chisel.set_event_formatter ("% proc.pid \ t% proc.name") chisel.set_filter ("(evt. type = unlinkat и (evt.arg.name = ".. path .." или \ evt.arg.name = ".. filename ..")) или \ (evt.type = unlink и evt.arg.path = ".. path ..") ") return true end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить скрипт lua в файл spy_deletes.lua
внутри каталога и выполнить sysdig
в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl
вы увидите это как:
Категория: файлы --------------- spy_deletes spy file удаление
Теперь вы можете называть это:
$ sudo sysdig -c spy_deletes / tmp / test
И в другом терминальном типе:
$ touch test; тест бесконтактного теста $ touch; disable / tmp / test $ touch test; тест rm test $ touch; rm / tmp / test
Он выведет:
16025 unlink 16033 unlink 16041 rm 16049 rm
фильтр uninkat
заслуживает более точной и только соответствует абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat (2)
.
Вы можете узнать PID процесса, у которого есть файл, открытый с помощью lsof
.
Когда файл закрыт и удален, вы не сможете получить эту информацию.
BTW. Имейте в виду, что удаление файла происходит в директории, в которой он находится, а не в самом файле.
Позвольте мне предложить альтернативу с sysdig , поскольку ответы выше стареют. Пусть отображаются имена pid
и
процессов, удаляющих файл / tmp / test
. Сначала мы создаем файл с помощью touch / tmp / test
. Затем мы запускаем sysdig
со следующим фильтром:
$ sudo sysdig -p '% proc.pid,% proc.name' '(evt.type = unlinkat и (evt.arg.name = test или evt.arg.name = / tmp / test)) или (evt.type = unlink и evt.arg.path = / tmp / test) '
unlinkat (2)
требует фильтр или
, если путь (например, evt.arg.name
) может относительный . Для обработки как unlink
(который вызывает unlink (2)
) и rm
(который вызывает unlinkat (2)
в его версия GNU), фильтр должен соответствовать обоим компьютерам.
sysdig
должен запускаться, когда процесс удаляет файл. Затем, когда мы выполняем такие команды:
$ unlink / tmp / test $ touch / tmp / test $ rm / tmp / test $ cd / tmp; сенсорный тест; rm test
Он отобразит такой вывод:
11380, unlink 11407, rm 11662, rm
Пожалуйста, обратитесь к руководству пользователя sysdig для объяснения фильтрации и вывода.
Поскольку фильтр довольно длинный, мне было удобно писать долото. Это сценарий lua, связанный с командой sysdig
:
description = "отображает процессы, которые удаляют файл" short_description = "удаление шпионского файла" category = " файлы "args = {{name =" path ", description =" путь к файлу для мониторинга ", argtype =" string "},} function on_set_arg (name, val) path = val return true end function on_init () local filename = путь для i в string.gmatch (путь, "[^ /] +") do filename = i end chisel.set_event_formatter ("% proc.pid \ t% proc.name") chisel.set_filter ("(evt. type = unlinkat и (evt.arg.name = ".. path .." или \ evt.arg.name = ".. filename ..")) или \ (evt.type = unlink и evt.arg.path = ".. path ..") ") return true end
Не стесняйтесь комментировать и улучшать его. Вы можете поместить скрипт lua в файл spy_deletes.lua
внутри каталога и выполнить sysdig
в этом каталоге, чтобы сделать долото. При вводе sudo sysdig -cl
вы увидите это как:
Категория: файлы --------------- spy_deletes spy file удаление
Теперь вы можете называть это:
$ sudo sysdig -c spy_deletes / tmp / test
И в другом терминальном типе:
$ touch test; тест бесконтактного теста $ touch; disable / tmp / test $ touch test; тест rm test $ touch; rm / tmp / test
Он выведет:
16025 unlink 16033 unlink 16041 rm 16049 rm
фильтр uninkat
заслуживает более точной и только соответствует абсолютному пути. Для этого потребуется получить fd каталога, переданного в unlinkat (2)
.
rm / tmp / test
в другом терминале. Я отредактировал свой ответ, чтобы сделать его более ясным.
– Greg Leclercq
8 August 2015 в 23:34