Linux server2.hpierson.com 3.10.0-1160.105.1.el7.x86_64 #1 SMP Thu Dec 7 15:39:45 UTC 2023 x86_64
Apache
: 162.0.216.123 | : 216.73.216.152
28 Domain
?7.4.33
yvffpqmy
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
systemtap /
runtime /
linux /
[ HOME SHELL ]
Name
Size
Permission
Action
?;
uprobes
[ DIR ]
drwxr-xr-x
?;
uprobes2
[ DIR ]
drwxr-xr-x
access_process_vm.h
3.59
KB
-rw-r--r--
addr-map.c
8.03
KB
-rw-r--r--
alloc.c
15.02
KB
-rw-r--r--
arith.c
16.41
KB
-rw-r--r--
autoconf-alloc-percpu-align.c
118
B
-rw-r--r--
autoconf-asm-syscall.c
26
B
-rw-r--r--
autoconf-bio-bi_opf.c
824
B
-rw-r--r--
autoconf-blk-types.c
359
B
-rw-r--r--
autoconf-compat_sigaction.c
448
B
-rw-r--r--
autoconf-constant-tsc.c
63
B
-rw-r--r--
autoconf-cpu-clock.c
1.25
KB
-rw-r--r--
autoconf-dpath-path.c
121
B
-rw-r--r--
autoconf-from_kuid_munged.c
191
B
-rw-r--r--
autoconf-fs_supers-hlist.c
354
B
-rw-r--r--
autoconf-generated-compile.c
56
B
-rw-r--r--
autoconf-get_user_pages_remote...
1.51
KB
-rw-r--r--
autoconf-get_user_pages_remote...
1.3
KB
-rw-r--r--
autoconf-grsecurity.c
219
B
-rw-r--r--
autoconf-hlist-4args.c
296
B
-rw-r--r--
autoconf-hrtimer-getset-expire...
126
B
-rw-r--r--
autoconf-hrtimer-rel.c
87
B
-rw-r--r--
autoconf-hw_breakpoint_context...
315
B
-rw-r--r--
autoconf-inode-private.c
173
B
-rw-r--r--
autoconf-inode-rwsem.c
172
B
-rw-r--r--
autoconf-inode-uretprobes.c
264
B
-rw-r--r--
autoconf-kallsyms-on-each-symb...
192
B
-rw-r--r--
autoconf-kprobe-symbol-name.c
90
B
-rw-r--r--
autoconf-ktime-get-real.c
98
B
-rw-r--r--
autoconf-linux-sched_headers.c
1.64
KB
-rw-r--r--
autoconf-local-clock.c
1.25
KB
-rw-r--r--
autoconf-mm-context-vdso-base....
117
B
-rw-r--r--
autoconf-mm-context-vdso.c
114
B
-rw-r--r--
autoconf-mod_kallsyms.c
51
B
-rw-r--r--
autoconf-module-sect-attrs.c
158
B
-rw-r--r--
autoconf-module_layout.c
52
B
-rw-r--r--
autoconf-nameidata.c
96
B
-rw-r--r--
autoconf-netfilter-313b.c
602
B
-rw-r--r--
autoconf-netfilter-4_1.c
769
B
-rw-r--r--
autoconf-netfilter-4_4.c
1.43
KB
-rw-r--r--
autoconf-netfilter.c
422
B
-rw-r--r--
autoconf-old-inode-uprobes.c
357
B
-rw-r--r--
autoconf-oneachcpu-retry.c
957
B
-rw-r--r--
autoconf-pagefault_disable.c
137
B
-rw-r--r--
autoconf-perf-structpid.c
444
B
-rw-r--r--
autoconf-procfs-owner.c
158
B
-rw-r--r--
autoconf-real-parent.c
427
B
-rw-r--r--
autoconf-regset.c
239
B
-rw-r--r--
autoconf-relay-umode_t.c
730
B
-rw-r--r--
autoconf-relay_buf-per_cpu_ptr...
920
B
-rw-r--r--
autoconf-ring_buffer-flags.c
112
B
-rw-r--r--
autoconf-ring_buffer_lost_even...
296
B
-rw-r--r--
autoconf-ring_buffer_read_prep...
181
B
-rw-r--r--
autoconf-save-stack-trace-no-b...
498
B
-rw-r--r--
autoconf-save-stack-trace.c
501
B
-rw-r--r--
autoconf-smpcall-4args.c
166
B
-rw-r--r--
autoconf-smpcall-5args.c
169
B
-rw-r--r--
autoconf-stacktrace_ops-int-ad...
409
B
-rw-r--r--
autoconf-stacktrace_ops-warnin...
188
B
-rw-r--r--
autoconf-task-uid.c
152
B
-rw-r--r--
autoconf-task_work-struct.c
219
B
-rw-r--r--
autoconf-timerfd.c
232
B
-rw-r--r--
autoconf-trace-printk.c
151
B
-rw-r--r--
autoconf-tracepoint-strings.c
233
B
-rw-r--r--
autoconf-uaccess.c
28
B
-rw-r--r--
autoconf-udelay_simple.c
90
B
-rw-r--r--
autoconf-uidgid.c
50
B
-rw-r--r--
autoconf-unwind-stack-trace.c
326
B
-rw-r--r--
autoconf-uprobe-get-pc.c
374
B
-rw-r--r--
autoconf-utrace-regset.c
273
B
-rw-r--r--
autoconf-utrace-via-tracepoint...
1.67
KB
-rw-r--r--
autoconf-vm-area-pte.c
141
B
-rw-r--r--
autoconf-walk-stack.c
217
B
-rw-r--r--
autoconf-x86-fs.c
90
B
-rw-r--r--
autoconf-x86-gs.c
90
B
-rw-r--r--
autoconf-x86-uniregs.c
115
B
-rw-r--r--
autoconf-x86-xfs.c
91
B
-rw-r--r--
common_session_state.h
2.93
KB
-rw-r--r--
compat_net.h
858
B
-rw-r--r--
compat_structs.h
4.31
KB
-rw-r--r--
compat_unistd.h
60.25
KB
-rw-r--r--
copy.c
2.58
KB
-rw-r--r--
debug.h
2.5
KB
-rw-r--r--
io.c
4.6
KB
-rw-r--r--
itrace.c
14.53
KB
-rw-r--r--
kprobes.c
22.57
KB
-rw-r--r--
loc2c-runtime.h
23.87
KB
-rw-r--r--
map_list.h
1.19
KB
-rw-r--r--
map_runtime.h
4.12
KB
-rw-r--r--
namespaces.h
6.96
KB
-rw-r--r--
netfilter.c
1.38
KB
-rw-r--r--
perf.c
7.42
KB
-rw-r--r--
perf.h
1.22
KB
-rw-r--r--
perf_event_counter_context.c
336
B
-rw-r--r--
perf_probe_handler_nmi.c
278
B
-rw-r--r--
perf_read.h
959
B
-rw-r--r--
print.c
5.85
KB
-rw-r--r--
probe_lock.h
1.69
KB
-rw-r--r--
regs-ia64.c
3.65
KB
-rw-r--r--
regs.c
12.63
KB
-rw-r--r--
runtime.h
10.55
KB
-rw-r--r--
runtime_context.h
4.75
KB
-rw-r--r--
runtime_defines.h
1.02
KB
-rw-r--r--
stat_runtime.h
1.7
KB
-rw-r--r--
stp_tracepoint.c
11.07
KB
-rw-r--r--
stp_tracepoint.h
2.1
KB
-rw-r--r--
syscalls-common.h
976
B
-rw-r--r--
task_finder.c
52.17
KB
-rw-r--r--
task_finder2.c
53.5
KB
-rw-r--r--
task_finder_map.c
5.07
KB
-rw-r--r--
task_finder_stubs.c
2.38
KB
-rw-r--r--
task_work_compatibility.h
1.25
KB
-rw-r--r--
timer.c
2.15
KB
-rw-r--r--
timer.h
1.35
KB
-rw-r--r--
timer_compatibility.h
2.26
KB
-rw-r--r--
uprobes-common.c
15.21
KB
-rw-r--r--
uprobes-common.h
1.61
KB
-rw-r--r--
uprobes-inc.h
484
B
-rw-r--r--
uprobes-inode.c
22.79
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : task_finder_map.c
#include <linux/list.h> #include <linux/jhash.h> #include "stp_helper_lock.h" // When handling mmap()/munmap()/mprotect() syscall tracing to notice // memory map changes, we need to cache syscall entry parameter values // for processing at syscall exit. // __stp_tf_map_lock protects the hash table. // Documentation/spinlocks.txt suggest we can be a bit more clever // if we guarantee that in interrupt context we only read, not write // the datastructures. We should never change the hash table or the // contents in interrupt context (which should only ever call // stap_find_map_map_info for getting stored info). So we might // want to look into that if this seems a bottleneck. static STP_DEFINE_RWLOCK(__stp_tf_map_lock); #define __STP_TF_HASH_BITS 4 #define __STP_TF_TABLE_SIZE (1 << __STP_TF_HASH_BITS) #ifndef TASK_FINDER_MAP_ENTRY_ITEMS #define TASK_FINDER_MAP_ENTRY_ITEMS 100 #endif struct __stp_tf_map_entry { /* private: */ struct hlist_node hlist; int usage; /* public: */ pid_t pid; long syscall_no; unsigned long arg0; unsigned long arg1; unsigned long arg2; }; static struct __stp_tf_map_entry __stp_tf_map_free_list_items[TASK_FINDER_MAP_ENTRY_ITEMS]; static struct hlist_head __stp_tf_map_free_list[1]; static struct hlist_head __stp_tf_map_table[__STP_TF_TABLE_SIZE]; // __stp_tf_map_initialize(): Initialize the free list. Grabs the // lock. static void __stp_tf_map_initialize(void) { int i; struct hlist_head *head = &__stp_tf_map_free_list[0]; unsigned long flags; stp_write_lock_irqsave(&__stp_tf_map_lock, flags); for (i = 0; i < TASK_FINDER_MAP_ENTRY_ITEMS; i++) { hlist_add_head(&__stp_tf_map_free_list_items[i].hlist, head); } stp_write_unlock_irqrestore(&__stp_tf_map_lock, flags); } // __stp_tf_map_get_free_entry(): Returns an entry from the free list // or NULL. The __stp_tf_map_lock must be write locked before calling this // function. static struct __stp_tf_map_entry * __stp_tf_map_get_free_entry(void) { struct hlist_head *head = &__stp_tf_map_free_list[0]; struct hlist_node *node; struct __stp_tf_map_entry *entry = NULL; if (hlist_empty(head)) return NULL; stap_hlist_for_each_entry(entry, node, head, hlist) { break; } if (entry != NULL) hlist_del(&entry->hlist); return entry; } // __stp_tf_map_put_free_entry(): Puts an entry back on the free // list. The __stp_tf_map_lock must be write locked before calling this // function. static void __stp_tf_map_put_free_entry(struct __stp_tf_map_entry *entry) { struct hlist_head *head = &__stp_tf_map_free_list[0]; hlist_add_head(&entry->hlist, head); } // __stp_tf_map_hash(): Compute the map hash. static inline u32 __stp_tf_map_hash(struct task_struct *tsk) { return (jhash_1word(tsk->pid, 0) & (__STP_TF_TABLE_SIZE - 1)); } // Get map_entry if the map is present in the map hash table. // Returns NULL if not present. Takes a read lock on __stp_tf_map_lock. static struct __stp_tf_map_entry * __stp_tf_get_map_entry(struct task_struct *tsk) { struct hlist_head *head; struct hlist_node *node; struct __stp_tf_map_entry *entry; unsigned long flags; stp_read_lock_irqsave(&__stp_tf_map_lock, flags); head = &__stp_tf_map_table[__stp_tf_map_hash(tsk)]; stap_hlist_for_each_entry(entry, node, head, hlist) { if (tsk->pid == entry->pid) { stp_read_unlock_irqrestore(&__stp_tf_map_lock, flags); return entry; } } stp_read_unlock_irqrestore(&__stp_tf_map_lock, flags); return NULL; } // Add the map info to the map hash table. Takes a write lock on // __stp_tf_map_lock. static int __stp_tf_add_map(struct task_struct *tsk, long syscall_no, unsigned long arg0, unsigned long arg1, unsigned long arg2) { struct hlist_head *head; struct hlist_node *node; struct __stp_tf_map_entry *entry; unsigned long flags; stp_write_lock_irqsave(&__stp_tf_map_lock, flags); head = &__stp_tf_map_table[__stp_tf_map_hash(tsk)]; stap_hlist_for_each_entry(entry, node, head, hlist) { // If we find an existing entry, just increment the // usage count. if (tsk->pid == entry->pid) { entry->usage++; stp_write_unlock_irqrestore(&__stp_tf_map_lock, flags); return 0; } } // Get an element from the free list. entry = __stp_tf_map_get_free_entry(); if (!entry) { stp_write_unlock_irqrestore(&__stp_tf_map_lock, flags); return -ENOMEM; } entry->usage = 1; entry->pid = tsk->pid; entry->syscall_no = syscall_no; entry->arg0 = arg0; entry->arg1 = arg1; entry->arg2 = arg2; hlist_add_head(&entry->hlist, head); stp_write_unlock_irqrestore(&__stp_tf_map_lock, flags); return 0; } // Remove the map entry from the map hash table. Takes a write lock on // __stp_tf_map_lock. static int __stp_tf_remove_map_entry(struct __stp_tf_map_entry *entry) { struct hlist_head *head; struct hlist_node *node; int found = 0; if (entry != NULL) { unsigned long flags; stp_write_lock_irqsave(&__stp_tf_map_lock, flags); // Decrement the usage count. entry->usage--; // If the entry is unused, put it back on the free // list. if (entry->usage == 0) { hlist_del(&entry->hlist); __stp_tf_map_put_free_entry(entry); } stp_write_unlock_irqrestore(&__stp_tf_map_lock, flags); } return 0; }
Close