diff --git a/docs/bibliography/bibliography.bib b/docs/bibliography/bibliography.bib
index 81a5ff9..c6714e5 100644
--- a/docs/bibliography/bibliography.bib
+++ b/docs/bibliography/bibliography.bib
@@ -461,6 +461,27 @@ to Memory Management in Linux},
url={https://scoutapm.com/blog/understanding-page-faults-and-memory-swap-in-outs-when-should-you-worry},
date={2019-08-19},
author={Doug Breaker}
+},
+
+@online{mem_arch_proc,
+ title={Stack-based Buffer Overflow - Part 1},
+ url={https://h3xduck.github.io/exploit/2021/05/23/stackbufferoverflow-part1.html},
+ date={2021-05-23},
+ author={Marcos Sánchez Bajo}
+},
+
+@manual{8664_params_abi_p18,
+ title={System V Application Binary Interface
+AMD64 Architecture Processor Supplement},
+ author={H.J. Lu et al.},
+ pages={18},
+ date={2018-01-28},
+ url={https://raw.githubusercontent.com/wiki/hjl-tools/x86-psABI/x86-64-psABI-1.0.pdf}
+},
+
+@online{write_helper_non_fault,
+ title={probe_write_common_error},
+ url={https://www.spinics.net/lists/bpf/msg16795.html}
}
diff --git a/docs/bibliography/texput.log b/docs/bibliography/texput.log
index 8ec7f21..4d523e8 100644
--- a/docs/bibliography/texput.log
+++ b/docs/bibliography/texput.log
@@ -1,4 +1,4 @@
-This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Debian) (preloaded format=pdflatex 2022.4.27) 2 JUN 2022 18:01
+This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Debian) (preloaded format=pdflatex 2022.4.27) 4 JUN 2022 11:00
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
diff --git a/docs/document.aux b/docs/document.aux
index 00f05e1..5c9382a 100644
--- a/docs/document.aux
+++ b/docs/document.aux
@@ -158,6 +158,7 @@
\abx@aux@cite{ebpf_bounded_loops}
\abx@aux@segm{0}{0}{ebpf_bounded_loops}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.3}The eBPF verifier}{14}{subsection.2.2.3}\protected@file@percent }
+\newlabel{subsection:ebpf_verifier}{{2.2.3}{14}{The eBPF verifier}{subsection.2.2.3}{}}
\abx@aux@cite{ebpf_maps_kernel}
\abx@aux@segm{0}{0}{ebpf_maps_kernel}
\abx@aux@cite{bpf_syscall}
@@ -296,12 +297,11 @@
\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.4}Format of struct pt\_regs.}{31}{lstlisting.3.4}\protected@file@percent }
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\contentsline {table}{\numberline {3.4}{\ignorespaces Argument passing convention of registers for function calls in user and kernel space respectively.\relax }}{32}{table.caption.33}\protected@file@percent }
\newlabel{table:systemv_abi}{{3.4}{32}{Argument passing convention of registers for function calls in user and kernel space respectively.\relax }{table.caption.33}{}}
-\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\contentsline {table}{\numberline {3.5}{\ignorespaces Other relevant registers in x86\_64 and their purpose.\relax }}{32}{table.caption.34}\protected@file@percent }
-\newlabel{table:systemv_abi_other}{{3.5}{32}{Other relevant registers in x86\_64 and their purpose.\relax }{table.caption.34}{}}
\newlabel{code:sys_enter_read_tp_format}{{3.5}{32}{Format for parameters in sys\_enter\_read specified at the format file}{lstlisting.3.5}{}}
\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.5}Format for parameters in sys\_enter\_read specified at the format file.}{32}{lstlisting.3.5}\protected@file@percent }
-\newlabel{code:sys_enter_read_tp}{{3.6}{33}{Format of custom struct sys\_read\_enter\_ctx}{lstlisting.3.6}{}}
-\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.6}Format of custom struct sys\_read\_enter\_ctx.}{33}{lstlisting.3.6}\protected@file@percent }
+\newlabel{code:sys_enter_read_tp}{{3.6}{32}{Format of custom struct sys\_read\_enter\_ctx}{lstlisting.3.6}{}}
+\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.6}Format of custom struct sys\_read\_enter\_ctx.}{32}{lstlisting.3.6}\protected@file@percent }
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.2}Reading memory out of bounds}{33}{subsection.3.2.2}\protected@file@percent }
\abx@aux@cite{ebpf_friends_p15}
\abx@aux@segm{0}{0}{ebpf_friends_p15}
\abx@aux@cite{ebpf_override_return}
@@ -310,49 +310,68 @@
\abx@aux@segm{0}{0}{code_kernel_open}
\abx@aux@cite{code_kernel_open}
\abx@aux@segm{0}{0}{code_kernel_open}
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.2}Reading memory out of bounds}{34}{subsection.3.2.2}\protected@file@percent }
+\abx@aux@cite{code_kernel_open}
+\abx@aux@segm{0}{0}{code_kernel_open}
+\abx@aux@cite{code_kernel_open}
+\abx@aux@segm{0}{0}{code_kernel_open}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.3}Overriding function return values}{34}{subsection.3.2.3}\protected@file@percent }
\newlabel{code:override_return_1}{{3.7}{34}{Definition of the syscall sys\_open in the kernel \cite {code_kernel_open}}{lstlisting.3.7}{}}
\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.7}Definition of the syscall sys\_open in the kernel \cite {code_kernel_open}}{34}{lstlisting.3.7}\protected@file@percent }
-\abx@aux@cite{code_kernel_open}
-\abx@aux@segm{0}{0}{code_kernel_open}
-\abx@aux@cite{code_kernel_open}
-\abx@aux@segm{0}{0}{code_kernel_open}
+\newlabel{code:override_return_2}{{3.8}{34}{Definition of the macro for creating syscalls, containing the error injection macro. Only relevant instructions included, complete macro can be found in the kernel \cite {code_kernel_open}}{lstlisting.3.8}{}}
+\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.8}Definition of the macro for creating syscalls, containing the error injection macro. Only relevant instructions included, complete macro can be found in the kernel \cite {code_kernel_open}}{34}{lstlisting.3.8}\protected@file@percent }
\abx@aux@cite{fault_injection}
\abx@aux@segm{0}{0}{fault_injection}
-\newlabel{code:override_return_2}{{3.8}{35}{Definition of the macro for creating syscalls, containing the error injection macro. Only relevant instructions included, complete macro can be found in the kernel \cite {code_kernel_open}}{lstlisting.3.8}{}}
-\@writefile{lol}{\defcounter {refsection}{0}\relax }\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.8}Definition of the macro for creating syscalls, containing the error injection macro. Only relevant instructions included, complete macro can be found in the kernel \cite {code_kernel_open}}{35}{lstlisting.3.8}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.4}Sending signals to user programs}{35}{subsection.3.2.4}\protected@file@percent }
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.5}Conclusion}{35}{subsection.3.2.5}\protected@file@percent }
\abx@aux@cite{ebpf_helpers}
\abx@aux@segm{0}{0}{ebpf_helpers}
\abx@aux@cite{mem_page_arch}
\abx@aux@segm{0}{0}{mem_page_arch}
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.5}Conclusion}{36}{subsection.3.2.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {3.3}Memory corruption}{36}{section.3.3}\protected@file@percent }
\newlabel{section:mem_corruption}{{3.3}{36}{Memory corruption}{section.3.3}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.1}Memory management in Linux}{36}{subsection.3.3.1}\protected@file@percent }
\abx@aux@cite{page_faults}
\abx@aux@segm{0}{0}{page_faults}
-\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Memory translation of virtual pages to physical pages.\relax }}{37}{figure.caption.35}\protected@file@percent }
-\newlabel{fig:mem_arch_pages}{{3.1}{37}{Memory translation of virtual pages to physical pages.\relax }{figure.caption.35}{}}
-\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Major page fault after a page was removed from RAM.\relax }}{38}{figure.caption.36}\protected@file@percent }
-\newlabel{fig:mem_major_page_fault}{{3.2}{38}{Major page fault after a page was removed from RAM.\relax }{figure.caption.36}{}}
-\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces Minor page fault after a fork() in which the page table was not copied completely.\relax }}{38}{figure.caption.37}\protected@file@percent }
-\newlabel{fig:mem_minor_page_fault}{{3.3}{38}{Minor page fault after a fork() in which the page table was not copied completely.\relax }{figure.caption.37}{}}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Memory translation of virtual pages to physical pages.\relax }}{37}{figure.caption.34}\protected@file@percent }
+\newlabel{fig:mem_arch_pages}{{3.1}{37}{Memory translation of virtual pages to physical pages.\relax }{figure.caption.34}{}}
+\abx@aux@cite{mem_arch_proc}
+\abx@aux@segm{0}{0}{mem_arch_proc}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Major page fault after a page was removed from RAM.\relax }}{38}{figure.caption.35}\protected@file@percent }
+\newlabel{fig:mem_major_page_fault}{{3.2}{38}{Major page fault after a page was removed from RAM.\relax }{figure.caption.35}{}}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces Minor page fault after a fork() in which the page table was not copied completely.\relax }}{38}{figure.caption.36}\protected@file@percent }
+\newlabel{fig:mem_minor_page_fault}{{3.3}{38}{Minor page fault after a fork() in which the page table was not copied completely.\relax }{figure.caption.36}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.2}Process virtual memory}{39}{subsection.3.3.2}\protected@file@percent }
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.3}Accessing user memory}{39}{subsection.3.3.3}\protected@file@percent }
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {4}Methods??}{40}{chapter.4}\protected@file@percent }
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.4}{\ignorespaces Virtual memory architecture of a process\cite {mem_arch_proc}.\relax }}{39}{figure.caption.37}\protected@file@percent }
+\newlabel{fig:mem_proc_arch}{{3.4}{39}{Virtual memory architecture of a process\cite {mem_arch_proc}.\relax }{figure.caption.37}{}}
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.3}The process stack}{40}{subsection.3.3.3}\protected@file@percent }
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.5}{\ignorespaces Simplified stack representation showing only stack frames.\relax }}{40}{figure.caption.38}\protected@file@percent }
+\newlabel{fig:stack_pres}{{3.5}{40}{Simplified stack representation showing only stack frames.\relax }{figure.caption.38}{}}
+\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\contentsline {table}{\numberline {3.5}{\ignorespaces Relevant registers in x86\_64 for the stack and control flow and their purpose.\relax }}{40}{table.caption.39}\protected@file@percent }
+\newlabel{table:systemv_abi_other}{{3.5}{40}{Relevant registers in x86\_64 for the stack and control flow and their purpose.\relax }{table.caption.39}{}}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.6}{\ignorespaces Representation of push and pop operations in the stack.\relax }}{41}{figure.caption.40}\protected@file@percent }
+\newlabel{fig:stack_ops}{{3.6}{41}{Representation of push and pop operations in the stack.\relax }{figure.caption.40}{}}
+\abx@aux@cite{8664_params_abi_p18}
+\abx@aux@segm{0}{0}{8664_params_abi_p18}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.7}{\ignorespaces Stack representation right before starting the function call process.\relax }}{42}{figure.caption.41}\protected@file@percent }
+\newlabel{fig:stack_before}{{3.7}{42}{Stack representation right before starting the function call process.\relax }{figure.caption.41}{}}
+\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3.8}{\ignorespaces Stack representation right after the function preamble.\relax }}{42}{figure.caption.42}\protected@file@percent }
+\newlabel{fig:stack}{{3.8}{42}{Stack representation right after the function preamble.\relax }{figure.caption.42}{}}
+\abx@aux@cite{write_helper_non_fault}
+\abx@aux@segm{0}{0}{write_helper_non_fault}
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.4}Attacks and limitations of bpf\_probe\_write\_user()}{43}{subsection.3.3.4}\protected@file@percent }
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {4}Methods??}{45}{chapter.4}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {5}Results}{41}{chapter.5}\protected@file@percent }
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {5}Results}{46}{chapter.5}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {6}Conclusion and future work}{42}{chapter.6}\protected@file@percent }
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{\numberline {6}Conclusion and future work}{47}{chapter.6}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{Bibliography}{43}{chapter.6}\protected@file@percent }
-\newlabel{annex:bpftool_flags_kernel}{{6}{}{Appendix A - Bpftool commands}{chapter*.39}{}}
-\abx@aux@read@bbl@mdfivesum{B5521B82B204530DC3CD5A9274665FC8}
+\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{Bibliography}{48}{chapter.6}\protected@file@percent }
+\newlabel{annex:bpftool_flags_kernel}{{6}{}{Appendix A - Bpftool commands}{chapter*.44}{}}
+\abx@aux@read@bbl@mdfivesum{5BC491FF2560E8B85979411211F855E2}
+\abx@aux@read@bblrerun
\abx@aux@refcontextdefaultsdone
\abx@aux@defaultrefcontext{0}{ransomware_pwc}{none/global//global/global}
\abx@aux@defaultrefcontext{0}{rootkit_ptsecurity}{none/global//global/global}
@@ -421,5 +440,6 @@
\abx@aux@defaultrefcontext{0}{fault_injection}{none/global//global/global}
\abx@aux@defaultrefcontext{0}{mem_page_arch}{none/global//global/global}
\abx@aux@defaultrefcontext{0}{page_faults}{none/global//global/global}
+\abx@aux@defaultrefcontext{0}{mem_arch_proc}{none/global//global/global}
\ttl@finishall
-\gdef \@abspage@last{65}
+\gdef \@abspage@last{70}
diff --git a/docs/document.bbl b/docs/document.bbl
index 9df719f..f268584 100644
--- a/docs/document.bbl
+++ b/docs/document.bbl
@@ -121,8 +121,8 @@
\endverb
\endentry
\entry{ebpf_android}{online}{}
- \field{sortinit}{1}
- \field{sortinithash}{50c6687d7fc80f50136d75228e3c59ba}
+ \field{sortinit}{2}
+ \field{sortinithash}{ed39bb39cf854d5250e95b1c1f94f4ed}
\field{labeltitlesource}{title}
\field{title}{eBPF for Windows}
\verb{urlraw}
@@ -371,8 +371,8 @@
\endverb
\endentry
\entry{bpf_organicprogrammer_analysis}{online}{}
- \field{sortinit}{2}
- \field{sortinithash}{ed39bb39cf854d5250e95b1c1f94f4ed}
+ \field{sortinit}{3}
+ \field{sortinithash}{a37a8ef248a93c322189792c34fc68c9}
\field{labeltitlesource}{title}
\field{day}{28}
\field{month}{3}
@@ -513,8 +513,8 @@
\endverb
\endentry
\entry{ebpf_io_arch}{manual}{}
- \field{sortinit}{3}
- \field{sortinithash}{a37a8ef248a93c322189792c34fc68c9}
+ \field{sortinit}{4}
+ \field{sortinithash}{e071e0bcb44634fab398d68ad04e69f4}
\field{labeltitlesource}{title}
\field{title}{eBPF Documentation: Loader and verification architecture}
\verb{urlraw}
@@ -670,8 +670,8 @@
\strng{authornamehash}{0fcaa32b080db12cbc8b11b27d05ad61}
\strng{authorfullhash}{0fcaa32b080db12cbc8b11b27d05ad61}
\field{extraname}{2}
- \field{sortinit}{4}
- \field{sortinithash}{e071e0bcb44634fab398d68ad04e69f4}
+ \field{sortinit}{5}
+ \field{sortinithash}{5dd416adbafacc8226114bc0202d5fdd}
\field{labelnamesource}{author}
\field{labeltitlesource}{title}
\field{day}{11}
@@ -916,8 +916,8 @@
\strng{authorbibnamehash}{5442e761747b6fce78f695385639556e}
\strng{authornamehash}{5442e761747b6fce78f695385639556e}
\strng{authorfullhash}{5442e761747b6fce78f695385639556e}
- \field{sortinit}{6}
- \field{sortinithash}{7851c86048328b027313775d8fbd2131}
+ \field{sortinit}{7}
+ \field{sortinithash}{f615fb9c6fba11c6f962fb3fd599810e}
\field{labelnamesource}{author}
\field{labeltitlesource}{title}
\field{day}{13}
@@ -1113,8 +1113,8 @@
\endverb
\endentry
\entry{libbpf_upstream}{online}{}
- \field{sortinit}{7}
- \field{sortinithash}{f615fb9c6fba11c6f962fb3fd599810e}
+ \field{sortinit}{8}
+ \field{sortinithash}{1b24cab5087933ef0826a7cd3b99e994}
\field{labeltitlesource}{title}
\field{title}{BPF next kernel tree}
\verb{urlraw}
@@ -1273,8 +1273,8 @@
\endverb
\endentry
\entry{unpriv_ebpf_redhat}{online}{}
- \field{sortinit}{8}
- \field{sortinithash}{1b24cab5087933ef0826a7cd3b99e994}
+ \field{sortinit}{9}
+ \field{sortinithash}{54047ffb55bdefa0694bbd554c1b11a0}
\field{labeltitlesource}{title}
\field{title}{CVE-2022-0002}
\verb{urlraw}
@@ -1411,8 +1411,8 @@
\strng{authorbibnamehash}{47635127541392c1419dbc4a4d3153c6}
\strng{authornamehash}{47635127541392c1419dbc4a4d3153c6}
\strng{authorfullhash}{47635127541392c1419dbc4a4d3153c6}
- \field{sortinit}{9}
- \field{sortinithash}{54047ffb55bdefa0694bbd554c1b11a0}
+ \field{sortinit}{1}
+ \field{sortinithash}{50c6687d7fc80f50136d75228e3c59ba}
\field{labelnamesource}{author}
\field{labeltitlesource}{title}
\field{day}{1}
@@ -1457,6 +1457,36 @@
\verb https://scoutapm.com/blog/understanding-page-faults-and-memory-swap-in-outs-when-should-you-worry
\endverb
\endentry
+ \entry{mem_arch_proc}{online}{}
+ \name{author}{1}{}{%
+ {{hash=c6b49e9e6fbe96fdd89720e842dc0b03}{%
+ family={Bajo},
+ familyi={B\bibinitperiod},
+ given={Marcos\bibnamedelima Sánchez},
+ giveni={M\bibinitperiod\bibinitdelim S\bibinitperiod}}}%
+ }
+ \strng{namehash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \strng{fullhash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \strng{bibnamehash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \strng{authorbibnamehash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \strng{authornamehash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \strng{authorfullhash}{c6b49e9e6fbe96fdd89720e842dc0b03}
+ \field{sortinit}{1}
+ \field{sortinithash}{50c6687d7fc80f50136d75228e3c59ba}
+ \field{labelnamesource}{author}
+ \field{labeltitlesource}{title}
+ \field{day}{23}
+ \field{month}{5}
+ \field{title}{Stack-based Buffer Overflow - Part 1}
+ \field{year}{2021}
+ \field{dateera}{ce}
+ \verb{urlraw}
+ \verb https://h3xduck.github.io/exploit/2021/05/23/stackbufferoverflow-part1.html
+ \endverb
+ \verb{url}
+ \verb https://h3xduck.github.io/exploit/2021/05/23/stackbufferoverflow-part1.html
+ \endverb
+ \endentry
\enddatalist
\endrefsection
\endinput
diff --git a/docs/document.bcf b/docs/document.bcf
index bf51cf8..e591228 100644
--- a/docs/document.bcf
+++ b/docs/document.bcf
@@ -2348,94 +2348,97 @@
bibliography/bibliography.bib
- ransomware_pwc
- rootkit_ptsecurity
- ebpf_linux318
- bvp47_report
- bpfdoor_pwc
- ebpf_windows
- ebpf_android
- evil_ebpf
- bad_ebpf
- ebpf_friends
- ebpf_io
- bpf_bsd_origin
- ebpf_history_opensource
- bpf_bsd_origin_bpf_page1
- index_register
- bpf_bsd_origin_bpf_page5
- bpf_organicprogrammer_analysis
- bpf_bsd_origin_bpf_page7
- bpf_bsd_origin_bpf_page8
+ ransomware_pwc
+ rootkit_ptsecurity
+ ebpf_linux318
+ bvp47_report
+ bpfdoor_pwc
+ ebpf_windows
+ ebpf_android
+ evil_ebpf
+ bad_ebpf
+ ebpf_friends
+ ebpf_io
+ bpf_bsd_origin
+ ebpf_history_opensource
+ bpf_bsd_origin_bpf_page1
+ index_register
+ bpf_bsd_origin_bpf_page5
+ bpf_organicprogrammer_analysis
+ bpf_bsd_origin_bpf_page7
bpf_bsd_origin_bpf_page8
- bpf_bsd_origin_bpf_page1
- tcpdump_page
- ebpf_funcs_by_ver
+ bpf_bsd_origin_bpf_page8
+ bpf_bsd_origin_bpf_page1
+ tcpdump_page
ebpf_funcs_by_ver
- brendan_gregg_bpf_book
+ ebpf_funcs_by_ver
brendan_gregg_bpf_book
- ebpf_io_arch
- ebpf_inst_set
- 8664_inst_set_specs
- ebpf_inst_set
+ brendan_gregg_bpf_book
+ ebpf_io_arch
+ ebpf_inst_set
+ 8664_inst_set_specs
ebpf_inst_set
- ebpf_starovo_slides
- ebpf_inst_set
- ebpf_starovo_slides
- ebpf_JIT
- ebpf_JIT_demystify_page13
- ebpf_JIT_demystify_page14
- jit_enable_setting
- ebpf_starovo_slides_page23
- brendan_gregg_bpf_book_bpf_vm
- ebpf_verifier_kerneldocs
- ebpf_JIT_demystify_page17-22
- ebpf_bounded_loops
- ebpf_maps_kernel
- bpf_syscall
+ ebpf_inst_set
+ ebpf_starovo_slides
+ ebpf_inst_set
+ ebpf_starovo_slides
+ ebpf_JIT
+ ebpf_JIT_demystify_page13
+ ebpf_JIT_demystify_page14
+ jit_enable_setting
+ ebpf_starovo_slides_page23
+ brendan_gregg_bpf_book_bpf_vm
+ ebpf_verifier_kerneldocs
+ ebpf_JIT_demystify_page17-22
+ ebpf_bounded_loops
+ ebpf_maps_kernel
bpf_syscall
bpf_syscall
bpf_syscall
bpf_syscall
bpf_syscall
bpf_syscall
- ebpf_helpers
+ bpf_syscall
ebpf_helpers
ebpf_helpers
- xdp_gentle_intro
- xdp_manual
- tc_differences
- tc_docs_complete
- tc_direct_action
- tc_ret_list_complete
+ ebpf_helpers
+ xdp_gentle_intro
+ xdp_manual
+ tc_differences
+ tc_docs_complete
+ tc_direct_action
tc_ret_list_complete
- tp_kernel
- kprobe_manual
- kallsyms_kernel
- bcc_github
- libbpf_github
- libbpf_upstream
- libbpf_core
- ubuntu_caps
- evil_ebpf_p9
- ebpf_caps_intro
- ebpf_caps_lwn
- unprivileged_ebpf
- cve_unpriv_ebpf
- unpriv_ebpf_ubuntu
- unpriv_ebpf_suse
- unpriv_ebpf_redhat
- 8664_params_abi
- ebpf_friends_p15
- ebpf_override_return
- code_kernel_open
+ tc_ret_list_complete
+ tp_kernel
+ kprobe_manual
+ kallsyms_kernel
+ bcc_github
+ libbpf_github
+ libbpf_upstream
+ libbpf_core
+ ubuntu_caps
+ evil_ebpf_p9
+ ebpf_caps_intro
+ ebpf_caps_lwn
+ unprivileged_ebpf
+ cve_unpriv_ebpf
+ unpriv_ebpf_ubuntu
+ unpriv_ebpf_suse
+ unpriv_ebpf_redhat
+ 8664_params_abi
+ ebpf_friends_p15
+ ebpf_override_return
code_kernel_open
code_kernel_open
code_kernel_open
- fault_injection
- ebpf_helpers
- mem_page_arch
- page_faults
+ code_kernel_open
+ fault_injection
+ ebpf_helpers
+ mem_page_arch
+ page_faults
+ mem_arch_proc
+ 8664_params_abi_p18
+ write_helper_non_fault
diff --git a/docs/document.blg b/docs/document.blg
index 6a8f1d0..cbcb69e 100644
--- a/docs/document.blg
+++ b/docs/document.blg
@@ -1,87 +1,89 @@
-[0] Config.pm:311> INFO - This is Biber 2.16
-[0] Config.pm:314> INFO - Logfile is 'document.blg'
-[67] biber:340> INFO - === Sat Jun 4, 2022, 08:30:51
-[83] Biber.pm:415> INFO - Reading 'document.bcf'
-[182] Biber.pm:952> INFO - Found 67 citekeys in bib section 0
-[198] Biber.pm:4340> INFO - Processing section 0
-[209] Biber.pm:4531> INFO - Looking for bibtex format file 'bibliography/bibliography.bib' for section 0
-[211] bibtex.pm:1689> INFO - LaTeX decoding ...
-[238] bibtex.pm:1494> INFO - Found BibTeX data source 'bibliography/bibliography.bib'
-[243] Utils.pm:384> WARN - Duplicate entry key: 'code_kernel_open' in file 'bibliography/bibliography.bib', skipping ...
-[410] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 9, warning: 1 characters of junk seen at toplevel
-[410] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 15, warning: 1 characters of junk seen at toplevel
-[410] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 22, warning: 1 characters of junk seen at toplevel
-[410] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 28, warning: 1 characters of junk seen at toplevel
-[410] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 35, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 42, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 50, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 58, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 65, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 70, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 77, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 85, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 94, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 103, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 112, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 121, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 127, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 132, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 137, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 142, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 153, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 158, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 164, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 170, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 175, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 184, warning: 1 characters of junk seen at toplevel
-[411] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 191, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 199, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 206, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 215, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 224, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 233, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 239, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 244, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 249, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 256, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 261, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 266, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 271, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 276, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 283, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 288, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 295, warning: 1 characters of junk seen at toplevel
-[412] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 302, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 309, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 315, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 321, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 327, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 334, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 339, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 344, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 349, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 356, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 361, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 366, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 375, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 380, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 385, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 390, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 395, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 400, warning: 1 characters of junk seen at toplevel
-[413] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 405, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 410, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 419, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 428, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 433, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 438, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 443, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 449, warning: 1 characters of junk seen at toplevel
-[414] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_HkZb/f4d088b3f9f145b5c3058da33afd57d4_223362.utf8, line 459, warning: 1 characters of junk seen at toplevel
-[462] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'variable = shifted' with 'variable = non-ignorable'
-[462] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'normalization = NFD' with 'normalization = prenormalized'
-[462] Biber.pm:4168> INFO - Sorting list 'none/global//global/global' of type 'entry' with template 'none' and locale 'en-US'
-[462] Biber.pm:4174> INFO - No sort tailoring available for locale 'en-US'
-[501] bbl.pm:654> INFO - Writing 'document.bbl' with encoding 'UTF-8'
-[517] bbl.pm:757> INFO - Output to document.bbl
-[517] Biber.pm:128> INFO - WARNINGS: 71
+[1] Config.pm:311> INFO - This is Biber 2.16
+[1] Config.pm:314> INFO - Logfile is 'document.blg'
+[154] biber:340> INFO - === Sun Jun 5, 2022, 08:34:18
+[185] Biber.pm:415> INFO - Reading 'document.bcf'
+[372] Biber.pm:952> INFO - Found 68 citekeys in bib section 0
+[411] Biber.pm:4340> INFO - Processing section 0
+[431] Biber.pm:4531> INFO - Looking for bibtex format file 'bibliography/bibliography.bib' for section 0
+[435] bibtex.pm:1689> INFO - LaTeX decoding ...
+[503] bibtex.pm:1494> INFO - Found BibTeX data source 'bibliography/bibliography.bib'
+[513] Utils.pm:384> WARN - Duplicate entry key: 'code_kernel_open' in file 'bibliography/bibliography.bib', skipping ...
+[896] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 9, warning: 1 characters of junk seen at toplevel
+[897] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 15, warning: 1 characters of junk seen at toplevel
+[897] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 22, warning: 1 characters of junk seen at toplevel
+[897] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 28, warning: 1 characters of junk seen at toplevel
+[897] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 35, warning: 1 characters of junk seen at toplevel
+[897] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 42, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 50, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 58, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 65, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 70, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 77, warning: 1 characters of junk seen at toplevel
+[898] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 85, warning: 1 characters of junk seen at toplevel
+[899] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 94, warning: 1 characters of junk seen at toplevel
+[899] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 103, warning: 1 characters of junk seen at toplevel
+[899] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 112, warning: 1 characters of junk seen at toplevel
+[899] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 121, warning: 1 characters of junk seen at toplevel
+[900] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 127, warning: 1 characters of junk seen at toplevel
+[900] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 132, warning: 1 characters of junk seen at toplevel
+[900] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 137, warning: 1 characters of junk seen at toplevel
+[900] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 142, warning: 1 characters of junk seen at toplevel
+[901] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 153, warning: 1 characters of junk seen at toplevel
+[901] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 158, warning: 1 characters of junk seen at toplevel
+[901] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 164, warning: 1 characters of junk seen at toplevel
+[901] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 170, warning: 1 characters of junk seen at toplevel
+[902] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 175, warning: 1 characters of junk seen at toplevel
+[902] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 184, warning: 1 characters of junk seen at toplevel
+[902] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 191, warning: 1 characters of junk seen at toplevel
+[902] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 199, warning: 1 characters of junk seen at toplevel
+[902] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 206, warning: 1 characters of junk seen at toplevel
+[903] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 215, warning: 1 characters of junk seen at toplevel
+[903] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 224, warning: 1 characters of junk seen at toplevel
+[903] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 233, warning: 1 characters of junk seen at toplevel
+[903] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 239, warning: 1 characters of junk seen at toplevel
+[903] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 244, warning: 1 characters of junk seen at toplevel
+[904] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 249, warning: 1 characters of junk seen at toplevel
+[904] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 256, warning: 1 characters of junk seen at toplevel
+[904] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 261, warning: 1 characters of junk seen at toplevel
+[904] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 266, warning: 1 characters of junk seen at toplevel
+[904] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 271, warning: 1 characters of junk seen at toplevel
+[905] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 276, warning: 1 characters of junk seen at toplevel
+[905] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 283, warning: 1 characters of junk seen at toplevel
+[905] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 288, warning: 1 characters of junk seen at toplevel
+[905] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 295, warning: 1 characters of junk seen at toplevel
+[906] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 302, warning: 1 characters of junk seen at toplevel
+[906] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 309, warning: 1 characters of junk seen at toplevel
+[906] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 315, warning: 1 characters of junk seen at toplevel
+[906] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 321, warning: 1 characters of junk seen at toplevel
+[907] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 327, warning: 1 characters of junk seen at toplevel
+[907] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 334, warning: 1 characters of junk seen at toplevel
+[907] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 339, warning: 1 characters of junk seen at toplevel
+[907] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 344, warning: 1 characters of junk seen at toplevel
+[907] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 349, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 356, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 361, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 366, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 375, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 380, warning: 1 characters of junk seen at toplevel
+[908] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 385, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 390, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 395, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 400, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 405, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 410, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 419, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 428, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 433, warning: 1 characters of junk seen at toplevel
+[909] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 438, warning: 1 characters of junk seen at toplevel
+[910] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 443, warning: 1 characters of junk seen at toplevel
+[910] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 449, warning: 1 characters of junk seen at toplevel
+[910] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 459, warning: 1 characters of junk seen at toplevel
+[910] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 466, warning: 1 characters of junk seen at toplevel
+[910] Utils.pm:384> WARN - BibTeX subsystem: /tmp/biber_tmp_LCOX/f4d088b3f9f145b5c3058da33afd57d4_236327.utf8, line 473, warning: 1 characters of junk seen at toplevel
+[1017] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'normalization = NFD' with 'normalization = prenormalized'
+[1018] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'variable = shifted' with 'variable = non-ignorable'
+[1018] Biber.pm:4168> INFO - Sorting list 'none/global//global/global' of type 'entry' with template 'none' and locale 'en-US'
+[1018] Biber.pm:4174> INFO - No sort tailoring available for locale 'en-US'
+[1113] bbl.pm:654> INFO - Writing 'document.bbl' with encoding 'UTF-8'
+[1160] bbl.pm:757> INFO - Output to document.bbl
+[1161] Biber.pm:128> INFO - WARNINGS: 73
diff --git a/docs/document.lof b/docs/document.lof
index d7b6b4c..6ad7f9b 100644
--- a/docs/document.lof
+++ b/docs/document.lof
@@ -25,11 +25,21 @@
\defcounter {refsection}{0}\relax
\addvspace {10\p@ }
\defcounter {refsection}{0}\relax
-\contentsline {figure}{\numberline {3.1}{\ignorespaces Memory translation of virtual pages to physical pages.\relax }}{37}{figure.caption.35}%
+\contentsline {figure}{\numberline {3.1}{\ignorespaces Memory translation of virtual pages to physical pages.\relax }}{37}{figure.caption.34}%
\defcounter {refsection}{0}\relax
-\contentsline {figure}{\numberline {3.2}{\ignorespaces Major page fault after a page was removed from RAM.\relax }}{38}{figure.caption.36}%
+\contentsline {figure}{\numberline {3.2}{\ignorespaces Major page fault after a page was removed from RAM.\relax }}{38}{figure.caption.35}%
\defcounter {refsection}{0}\relax
-\contentsline {figure}{\numberline {3.3}{\ignorespaces Minor page fault after a fork() in which the page table was not copied completely.\relax }}{38}{figure.caption.37}%
+\contentsline {figure}{\numberline {3.3}{\ignorespaces Minor page fault after a fork() in which the page table was not copied completely.\relax }}{38}{figure.caption.36}%
+\defcounter {refsection}{0}\relax
+\contentsline {figure}{\numberline {3.4}{\ignorespaces Virtual memory architecture of a process\cite {mem_arch_proc}.\relax }}{39}{figure.caption.37}%
+\defcounter {refsection}{0}\relax
+\contentsline {figure}{\numberline {3.5}{\ignorespaces Simplified stack representation showing only stack frames.\relax }}{40}{figure.caption.38}%
+\defcounter {refsection}{0}\relax
+\contentsline {figure}{\numberline {3.6}{\ignorespaces Representation of push and pop operations in the stack.\relax }}{41}{figure.caption.40}%
+\defcounter {refsection}{0}\relax
+\contentsline {figure}{\numberline {3.7}{\ignorespaces Stack representation right before starting the function call process.\relax }}{42}{figure.caption.41}%
+\defcounter {refsection}{0}\relax
+\contentsline {figure}{\numberline {3.8}{\ignorespaces Stack representation right after the function preamble.\relax }}{42}{figure.caption.42}%
\defcounter {refsection}{0}\relax
\addvspace {10\p@ }
\defcounter {refsection}{0}\relax
diff --git a/docs/document.log b/docs/document.log
index 1f138cd..b2e0767 100644
--- a/docs/document.log
+++ b/docs/document.log
@@ -1,4 +1,4 @@
-This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Debian) (preloaded format=pdflatex 2022.4.27) 4 JUN 2022 08:55
+This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020/Debian) (preloaded format=pdflatex 2022.4.27) 5 JUN 2022 08:58
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
@@ -1089,7 +1089,7 @@ File: t1txss.fd 2000/12/15 v3.1
)
LaTeX Font Info: Font shape `T1/txss/m/n' will be
(Font) scaled to size 11.39996pt on input line 186.
-
+
File: images//Portada_Logo.png Graphic file (type png)