Changes between Version 7 and Version 8 of Building and Installing Sebek client in Ubuntu Server 7.10

Show
Ignore:
Timestamp:
06/04/08 02:30:51 (11 years ago)
Author:
rmcmillen
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Building and Installing Sebek client in Ubuntu Server 7.10

    v7 v8  
    100100 
    101101[[Image(compile_finish.png)]] 
     102 
     103= Installing sebek = 
     104 
     1051.  Copy the compressed archive (sebek-lin26-3.2.0b-bin.tar.gz) to the honeypot. 
     106 
     107{{{ 
     108tar zxf sebek-lin26-3.2.0b-bin.tar.gz 
     109cd sebek-lin26-3.2.0b-bin 
     110}}} 
     111 
     1122.  Edit the sbk_install.sh script as required. 
     113 
     114{{{ 
     115#!/bin/sh 
     116#------------------------------------------------------------------------------ 
     117#----- SEBEK LINUX CLIENT INSTALL SCRIPT -------------------------------------- 
     118#------------------------------------------------------------------------------ 
     119 
     120 
     121#------------------------------------------------------------------------------ 
     122#-----  USER CONFIGURABLE OPTIONS  -------------------------------------------- 
     123#----- NOTE: YOU MUST SPECIFIY A MAGIC VALUE AND DESTINATION PORT  
     124#------------------------------------------------------------------------------ 
     125 
     126 
     127#----- FILTER: 
     128#----- 
     129#----- File that contains the collection filter 
     130#----- 
     131FILTER="./filter.txt" 
     132 
     133 
     134#----- INTERFACE: 
     135#----- 
     136#----- Identifies the interface from which Sebek will log 
     137#----- This does not need to be an interface that has a 
     138#----- configured IP address. 
     139#----- 
     140INTERFACE="eth0" 
     141 
     142#----- DESTINATION_IP: 
     143#----- 
     144#----- sets destination IP for sebek packets 
     145#----- 
     146#----- If the collector is on the LAN, this value can be any address. 
     147#----- 
     148DESTINATION_IP="10.0.0.1" 
     149 
     150 
     151#----- DESTINATION_MAC: 
     152#----- 
     153#----- sets destination MAC addr for sebek packets 
     154#----- 
     155#----- If the collector is running on the LAN, use the MAC from 
     156#----- the collectors NIC. 
     157#----- 
     158#----- If the collector is multiple hops a way, set this to the MAC 
     159#----- of Default Gateway's NIC 
     160#----- 
     161DESTINATION_MAC="FF:FF:FF:FF:FF:FF" 
     162 
     163 
     164#----- SOURCE_PORT: 
     165#----- 
     166#----- defines the source udp port sebek sends to 
     167#----- 
     168#----- If multiple sebek hosts are behind NAT the source port 
     169#----- is one way of distinguishing the two hosts 
     170#----- 
     171#----- Range:  1      to  655536 
     172#----- Range:  0x0001 to  0xffff 
     173#----- 
     174SOURCE_PORT=1101 
     175 
     176 
     177#----- DESTINATION_PORT: 
     178#----- 
     179#----- defines the destination udp port sebek sends to 
     180#----- 
     181#----- ALL HONEYPOTS that belong to the same group  NEED 
     182#----- to use the SAME value for this. 
     183#----- 
     184#----- Range:  1      to  655536 
     185#----- Range:  0x0001 to  0xffff 
     186#----- 
     187DESTINATION_PORT= 
     188 
     189 
     190#----- MAGIC_VAL 
     191#----- 
     192#----- defines the magic value in the sebek record, it 
     193#----- used along with the Destination Port to identify  
     194#----- packets to hide from userspace on this host. Its 
     195#----- an unsigned 32 bit integer. 
     196#----- 
     197#-----  ALL HONEYPOTS that belong to the same group  NEED 
     198#----- to use the SAME value for this. 
     199#----- 
     200#----- Range 1          to  4.29497 billion 
     201#----- Range 0x00000001 to  0xffffffff 
     202#----- 
     203MAGIC_VAL=1111 
     204 
     205 
     206#----- KEYSTROKE_ONLY: 
     207#----- 
     208#----- controls if we only collect keystrokes, in this case anything that 
     209#----- has a read length of 1. This is a binary option. 
     210#-----  
     211#----- if set to 1: will only collect keystrokes 
     212#----- if set to 0: will collect ALL read data 
     213#-----    
     214KEYSTROKE_ONLY=1 
     215 
     216 
     217 
     218#----- SOCKET_TRACKING: 
     219#----- 
     220#----- Controls if we only collect information on network connections 
     221#----- This is a binary flag. 
     222#----- 
     223#----- if set to 1: will track socket connections 
     224#----- if set to 0: will not track sockets 
     225#----- 
     226SOCKET_TRACKING=1 
     227 
     228 
     229#----- WRITE_TRACKING: 
     230#----- 
     231#----- Experimental feature.  For now, is use is not recommended. 
     232#----- We have observed stability problems. 
     233#----- 
     234#----- if set to 1: will ALL write activity 
     235#----- if set to 0: wil not record write activity 
     236WRITE_TRACKING=0 
     237 
     238 
     239#----- TESTING: 
     240#----- 
     241#----- Used to make the module hidden 
     242#----- 
     243#----- if set to 1: kernel module in testing mode 
     244#----- if set to 0: kernel module will hide itself  
     245#----- 
     246TESTING=1 
     247 
     248 
     249#---- MODULE NAME: 
     250#------ 
     251#---- Used to control the name of the module, this should NOT be set to sebek 
     252#----  
     253#---- if set this defines the variable, if not a random name is selected 
     254#---- 
     255#----  example MODULE_NAME="foobar.ko" 
     256#---- 
     257MODULE_NAME= 
     258 
     259 
     260#------------------------------------------------------------------------------ 
     261#----- !! END OF USER CONFIGURABLE OPTIONS !!---------------------------------- 
     262#------------------------------------------------------------------------------ 
     263 
     264 
     265#----- source parameters ----- 
     266. ./parameters.sh 
     267 
     268 
     269#------------------------------------------------------------------------------ 
     270echo $"Installing Sebek:" 
     271 
     272 
     273if [ $DESTINATION_PORT -eq 0 ] ; then 
     274    echo $"     ERROR:  Undefined Destination Port" 
     275    exit 1 
     276fi 
     277 
     278if [ $MAGIC_VAL -eq 0 ] ; then 
     279    echo $"     ERROR:  Undefined Magic Value" 
     280    exit 1 
     281fi 
     282 
     283 
     284if [ ! $MODULE_NAME  ] ; then 
     285    MODULE_NAME=${RAND_MOD_NAME} 
     286fi 
     287 
     288 
     289if [ $FILTER ]; then 
     290    export LANG=POSIX 
     291    ./compile_filter.pl -i ${FILTER} -o ./filter.of 
     292    RETVAL=$? 
     293 
     294    if [ $RETVAL -ne 0 ] ; then 
     295        echo $"  unable to compile filter"; 
     296        exit 
     297    fi 
     298 
     299    FILTER="./filter.of"; 
     300fi 
     301 
     302 
     303 
     304cp sbk.ko ${MODULE_NAME} 
     305 
     306/sbin/insmod  ${MODULE_NAME} ${DIP_PARM}=${DESTINATION_IP}\ 
     307                             ${DMAC_PARM}=${DESTINATION_MAC}\ 
     308                             ${DPORT_PARM}=${DESTINATION_PORT}\ 
     309                             ${SPORT_PARM}=${SOURCE_PORT}\ 
     310                             ${INT_PARM}=${INTERFACE} \ 
     311                             ${KSO_PARM}=${KEYSTROKE_ONLY}\ 
     312                             ${ST_PARM}=${SOCKET_TRACKING}\ 
     313                             ${WT_PARM}=${WRITE_TRACKING}\ 
     314                             ${MAGIC_PARM}=${MAGIC_VAL}\ 
     315                             ${FILTER_PARAM}=${FILTER}\ 
     316                             ${TESTING_PARM}=${TESTING}\ 
     317                              
     318RETVAL=$? 
     319 
     320if [ $RETVAL -eq 0 ] ; then 
     321    #----- sebek module install succeeded 
     322    echo $"  ${MODULE_NAME} installed successfully" 
     323 
     324else 
     325   #----- instal of the sebek module failed. 
     326   echo $"  ${MODULE_NAME} install failed"  
     327 
     328fi 
     329}}} 
     330 
     331At a minimum, add a DESTINATION_PORT.  The module will not load properly if the DESTINATION_PORT is not provided.  Another variable to consider is TESTING.  If you leave TESTING=1, you will be able to see the module.  If you change TESTING=1 to TESTING=0, the module will hide itself. 
     332 
     3333.  Load the module. 
     334 
     335{{{ 
     336sudo ./sbk_install.sh 
     337}}} 
     338 
     339[[Image()]]