Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
S
Sleuthkit
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
IRT
Sleuthkit
Commits
81cb7ae5
Commit
81cb7ae5
authored
6 years ago
by
U-BASIS\dsmyda
Browse files
Options
Downloads
Patches
Plain Diff
Fixed bugs and implemented suggested changes
parent
ab297869
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
tsk/auto/auto_db.cpp
+19
-56
19 additions, 56 deletions
tsk/auto/auto_db.cpp
tsk/img/ewf.c
+3
-3
3 additions, 3 deletions
tsk/img/ewf.c
tsk/img/tsk_img_i.h
+44
-53
44 additions, 53 deletions
tsk/img/tsk_img_i.h
with
66 additions
and
112 deletions
tsk/auto/auto_db.cpp
+
19
−
56
View file @
81cb7ae5
...
@@ -222,62 +222,25 @@ TskAutoDb::addImageDetails(const char* deviceId)
...
@@ -222,62 +222,25 @@ TskAutoDb::addImageDetails(const char* deviceId)
sha1
=
ewf_info
->
sha1hash
;
sha1
=
ewf_info
->
sha1hash
;
}
}
char
*
header_result
=
libewf_read_description
(
ewf_info
->
handle
);
//Need 1MB for libewf read and extra 100 bytes for header name and formatting
const
size_t
buffer_size
=
1024100
;
collectionDetails
.
append
(
header_result
);
char
result
[
buffer_size
];
free
(
header_result
);
//Populate all of the libewf header values for the acquisition details column
header_result
=
libewf_read_case_number
(
ewf_info
->
handle
);
collectionDetails
.
append
(
libewf_read_description
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
header_result
);
collectionDetails
.
append
(
libewf_read_case_number
(
ewf_info
->
handle
,
result
,
buffer_size
));
free
(
header_result
);
collectionDetails
.
append
(
libewf_read_evidence_number
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
libewf_read_examiner_name
(
ewf_info
->
handle
,
result
,
buffer_size
));
header_result
=
libewf_read_evidence_number
(
ewf_info
->
handle
);
collectionDetails
.
append
(
libewf_read_notes
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
header_result
);
collectionDetails
.
append
(
libewf_read_model
(
ewf_info
->
handle
,
result
,
buffer_size
));
free
(
header_result
);
collectionDetails
.
append
(
libewf_read_serial_number
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
libewf_read_device_label
(
ewf_info
->
handle
,
result
,
buffer_size
));
header_result
=
libewf_read_examiner_name
(
ewf_info
->
handle
);
collectionDetails
.
append
(
libewf_read_version
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
header_result
);
collectionDetails
.
append
(
libewf_read_platform
(
ewf_info
->
handle
,
result
,
buffer_size
));
free
(
header_result
);
collectionDetails
.
append
(
libewf_read_acquired_date
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
libewf_read_system_date
(
ewf_info
->
handle
,
result
,
buffer_size
));
header_result
=
libewf_read_notes
(
ewf_info
->
handle
);
collectionDetails
.
append
(
libewf_read_acquiry_operating_system
(
ewf_info
->
handle
,
result
,
buffer_size
));
collectionDetails
.
append
(
header_result
);
collectionDetails
.
append
(
libewf_read_acquiry_software_version
(
ewf_info
->
handle
,
result
,
buffer_size
));
free
(
header_result
);
header_result
=
libewf_read_model
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_serial_number
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_device_label
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_version
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_platform
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_acquired_date
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_system_date
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_acquiry_operating_system
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
header_result
=
libewf_read_acquiry_software_version
(
ewf_info
->
handle
);
collectionDetails
.
append
(
header_result
);
free
(
header_result
);
}
}
#endif
#endif
...
...
This diff is collapsed.
Click to expand it.
tsk/img/ewf.c
+
3
−
3
View file @
81cb7ae5
...
@@ -400,7 +400,7 @@ ewf_open(int a_num_img,
...
@@ -400,7 +400,7 @@ ewf_open(int a_num_img,
tsk_img_free
(
ewf_info
);
tsk_img_free
(
ewf_info
);
if
(
tsk_verbose
!=
0
)
{
if
(
tsk_verbose
!=
0
)
{
tsk_fprintf
(
stderr
,
"Error getting
size
of EWF file
\n
"
);
tsk_fprintf
(
stderr
,
"Error getting
MD5
of EWF file
\n
"
);
}
}
return
(
NULL
);
return
(
NULL
);
}
}
...
@@ -415,14 +415,14 @@ ewf_open(int a_num_img,
...
@@ -415,14 +415,14 @@ ewf_open(int a_num_img,
getError
(
ewf_error
,
error_string
);
getError
(
ewf_error
,
error_string
);
tsk_error_set_errstr
(
"ewf_open file: %"
PRIttocTSK
tsk_error_set_errstr
(
"ewf_open file: %"
PRIttocTSK
": Error getting
MD5
of image (%s)"
,
a_images
[
0
],
": Error getting
SHA1
of image (%s)"
,
a_images
[
0
],
error_string
);
error_string
);
libewf_error_free
(
&
ewf_error
);
libewf_error_free
(
&
ewf_error
);
tsk_img_free
(
ewf_info
);
tsk_img_free
(
ewf_info
);
if
(
tsk_verbose
!=
0
)
{
if
(
tsk_verbose
!=
0
)
{
tsk_fprintf
(
stderr
,
"Error getting
size
of EWF file
\n
"
);
tsk_fprintf
(
stderr
,
"Error getting
SHA1
of EWF file
\n
"
);
}
}
return
(
NULL
);
return
(
NULL
);
}
}
...
...
This diff is collapsed.
Click to expand it.
tsk/img/tsk_img_i.h
+
44
−
53
View file @
81cb7ae5
...
@@ -27,8 +27,6 @@
...
@@ -27,8 +27,6 @@
#include
<fcntl.h>
#include
<fcntl.h>
#include
<errno.h>
#include
<errno.h>
#define BUFFER_SIZE 1024000
#ifdef __cplusplus
#ifdef __cplusplus
extern
"C"
{
extern
"C"
{
#endif
#endif
...
@@ -46,88 +44,81 @@ inline int is_blank(const char* str) {
...
@@ -46,88 +44,81 @@ inline int is_blank(const char* str) {
return
1
;
return
1
;
}
}
inline
char
*
read_libewf_header_value
(
libewf_handle_t
*
handle
,
const
uint8_t
*
identifier
,
size_t
identifier_length
,
const
char
*
key
)
{
/**
libewf_error_t
*
ewf_error
=
NULL
;
* Reads the first 1 MB of the libewf header
char
*
header_value
=
(
char
*
)
malloc
(
BUFFER_SIZE
);
*/
header_value
[
0
]
=
'\0'
;
inline
char
*
read_libewf_header_value
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
const
size_t
buffer_size
,
const
uint8_t
*
identifier
,
size_t
identifier_length
,
const
char
*
key
)
{
if
(
header_value
==
NULL
)
{
result_buffer
[
0
]
=
'\0'
;
return
header_value
;
}
int
result
=
libewf_handle_get_utf8_header_value
(
handle
,
identifier
,
identifier_length
,
(
uint8_t
*
)
header_value
,
BUFFER_SIZE
,
&
ewf_error
);
strcpy
(
result_buffer
,
key
);
if
(
result
==
-
1
||
is_blank
(
header_value
))
{
libewf_error_t
*
ewf_error
;
return
header_value
;
size_t
key_len
=
strlen
(
key
);
}
//+ 2 for new line char and null byte
int
result
=
libewf_handle_get_utf8_header_value
(
handle
,
identifier
,
identifier_length
,
(
uint8_t
*
)(
result_buffer
+
key_len
),
buffer_size
-
key_len
,
&
ewf_error
);
char
*
result_str
=
(
char
*
)
malloc
((
strlen
(
key
)
+
strlen
(
header_value
)
+
2
)
*
sizeof
(
char
));
if
(
result
!=
-
1
&&
!
is_blank
(
result_buffer
+
key_len
))
{
if
(
result_str
==
NULL
)
{
strcat
(
result_buffer
,
"
\n
"
);
return
header_value
;
}
else
{
}
//if blank or error, return nothing!
result_buffer
[
0
]
=
'\0'
;
strcpy
(
result_str
,
key
);
}
strcat
(
result_str
,
header_value
);
strcat
(
result_str
,
"
\n
"
);
free
(
header_value
);
return
result_
st
r
;
return
result_
buffe
r
;
}
}
inline
char
*
libewf_read_description
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_description
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
const
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"description"
,
11
,
"Description: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"description"
,
11
,
"Description: "
);
}
}
inline
char
*
libewf_read_case_number
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_case_number
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"case_number"
,
11
,
"Case Number: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"case_number"
,
11
,
"Case Number: "
);
}
}
inline
char
*
libewf_read_evidence_number
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_evidence_number
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"evidence_number"
,
15
,
"Evidence Number: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"evidence_number"
,
15
,
"Evidence Number: "
);
}
}
inline
char
*
libewf_read_examiner_name
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_examiner_name
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"examiner_name"
,
13
,
"Examiner Name: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"examiner_name"
,
13
,
"Examiner Name: "
);
}
}
inline
char
*
libewf_read_notes
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_notes
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"notes"
,
5
,
"Notes: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"notes"
,
5
,
"Notes: "
);
}
}
inline
char
*
libewf_read_model
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_model
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"model"
,
5
,
"Model: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"model"
,
5
,
"Model: "
);
}
}
inline
char
*
libewf_read_serial_number
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_serial_number
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"serial_number"
,
13
,
"Serial Number: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"serial_number"
,
13
,
"Serial Number: "
);
}
}
inline
char
*
libewf_read_device_label
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_device_label
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"device_label"
,
12
,
"Device Label:"
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"device_label"
,
12
,
"Device Label:"
);
}
}
inline
char
*
libewf_read_version
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_version
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"version"
,
7
,
"Version: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"version"
,
7
,
"Version: "
);
}
}
inline
char
*
libewf_read_platform
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_platform
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"platform"
,
8
,
"Platform: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"platform"
,
8
,
"Platform: "
);
}
}
inline
char
*
libewf_read_acquired_date
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_acquired_date
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"acquiry_date"
,
12
,
"Acquired Date: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"acquiry_date"
,
12
,
"Acquired Date: "
);
}
}
inline
char
*
libewf_read_system_date
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_system_date
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"system_date"
,
11
,
"System Date: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"system_date"
,
11
,
"System Date: "
);
}
}
inline
char
*
libewf_read_acquiry_operating_system
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_acquiry_operating_system
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"acquiry_operating_system"
,
24
,
"Acquiry Operating System: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"acquiry_operating_system"
,
24
,
"Acquiry Operating System: "
);
}
}
inline
char
*
libewf_read_acquiry_software_version
(
libewf_handle_t
*
handle
)
{
inline
char
*
libewf_read_acquiry_software_version
(
libewf_handle_t
*
handle
,
char
*
result_buffer
,
size_t
buffer_size
)
{
return
read_libewf_header_value
(
handle
,
(
uint8_t
*
)
"acquiry_software_version"
,
24
,
"Acquiry Software Version: "
);
return
read_libewf_header_value
(
handle
,
result_buffer
,
buffer_size
,
(
uint8_t
*
)
"acquiry_software_version"
,
24
,
"Acquiry Software Version: "
);
}
}
#endif
#endif
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment