module에서 application의 function을 호출하는 방법이 있는지요

rain의 이미지

kernel module로 kernel sniffer를 만들고 이를 application level로
dumping해 주려고 합니다.
packet을 계속해서 module에서 application level로 보내줄 수 있는
가능한 방법들이 어떤 것들이 있는지 알고 싶습니다.
한가지 더 궁금한 건 kernel module에서 직접 application level의
함수를 호출할 수 있는 방법이 있는지 궁금합니다.

ahgod의 이미지

rain wrote:
kernel module로 kernel sniffer를 만들고 이를 application level로
dumping해 주려고 합니다.
packet을 계속해서 module에서 application level로 보내줄 수 있는
가능한 방법들이 어떤 것들이 있는지 알고 싶습니다.
한가지 더 궁금한 건 kernel module에서 직접 application level의
함수를 호출할 수 있는 방법이 있는지 궁금합니다.

음... 인달 application level로 보내줄 수 있는 방법으로는 아래와 같이 할 수 있다고 생각되어집니다...

1. packet 정보를 전달할 수 있는 ioctl을 만들고 이 함수를 application에서 계속적으로 폴링하면서 정보를 가지고 가는 방법
2. Kernel에서 사용되는 Signal을 이용하여 이것의 핸들러를 유저영역에 만들고, Packet을 전달하고자 할 때 강제적으로 Signal을 발생시켜서 유저영역의 핸들러에 정보를 제공
3. Proc File System을 이용하여서 정보를 제공하는 방법
4. Kernel에서 Application Level의 Function을 Call하는 방법 (정상적인 방법이 아니라고 생각됨...)

4번의 방법에 대해서 물어보신거 같은데요... 가능성은 있지만, 어떤 결과를 초래할 지... 그 방법이라 하면, 유저 Function의 Pointer를 Module의 ioctl로 전달받고 Kernel에서는 전달받은 Function Pointer를 이미 선언해놓은 Function Pointer로 매핑시켜서 쓰는 방법입니다만... Kernel 2.4.20-8에서는 테스트해본 결과 유저영역의 Function을 불러도 별 문제없이 동작을 하는 것으로 보이나, 아직 복잡한 동작을 수행하지 않았기 때문에 어떤 문제가 발생할지는 아직 저도 지식이 짧아서 잘 모르겠습니다. 그럼...

darkblue99의 이미지

#include <linux/kmod.h>

int exec_usermodehelper ( char *program_path, char *argv[], char *envp[])

Be Postive!

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.