Skip to content
This repository was archived by the owner on Mar 11, 2025. It is now read-only.
This repository was archived by the owner on Mar 11, 2025. It is now read-only.

VM Compromised Reported on every site.....StartManager failing after snapshot #220

@dkindlund

Description

@dkindlund

Hello,

For the past week I've been working towards completing a functional honeyclient for research purposes. When executing start manager to troll selected URLs...every URL is reporting a VM compromise. These are random site but known good sites (Hotmail, Google, CNN, and my own test site. I'm not use how to address this issue as I have tried what was reported in #180 which doesn't work for me.

The added issue is StartManager is killed after the subsequent snapshot of the 'compromised' VM is copied and another clone is being launched. I suspect the first issue plays a hand in the latter but I'm not sure. Below is the output of what I see during the report. Thanks in advance.

{{{
root@bishop:/home/ralph/honeyclient# perl -Ilib bin/StartManager.plStarting new session...
2009-10-08 12:24:56 INFO HoneyClient::Manager::VM::init - Initializing VM daemon at PID: 6977
2009-10-08 12:24:56 INFO HoneyClient::Manager::VM::Clone::new - Setting VM (/vm/master/master.vmx) as master.
2009-10-08 12:25:09 INFO HoneyClient::Manager::VM::Clone::_init - Quick cloning master VM (/vm/master/master.vmx).
2009-10-08 12:26:00 INFO HoneyClient::Manager::VM::Clone::_init - Initialized clone VM (5ef32a23cad9915e93e8b23739) using IP (10.0.0.128) and MAC (00:0c:29:2a:e0:e5).
hostname: Unknown host
VM State Table:
$VAR1 = {
'5ef32a23cad9915e93e8b23739' => {
'sources' => {
'00:0c:29:2a:e0:e5' => {
'10.0.0.128' => {
'tcp' => [
80,
443
]
}
}
}
}
};

Cannot encode unnamed element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'sources' element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'value' element as 'hash'. Will be encoded as 'map' instead
2009-10-08 12:26:40 INFO HoneyClient::Manager::get_urls - Waiting for new URLs from database.
Calling updateState()...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 0,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
VM Integrity Check: OK!
Cannot encode unnamed element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'sources' element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'value' element as 'hash'. Will be encoded as 'map' instead
VM State Table:
$VAR1 = {
'5ef32a23cad9915e93e8b23739' => {
'targets' => {
'www.cnn.com' => {
'tcp' => [
80
]
}
},
'sources' => {
'00:0c:29:2a:e0:e5' => {
'10.0.0.128' => {
'tcp' => [
80,
443
]
}
}
}
}
};

Cannot encode unnamed element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'sources' element as 'hash'. Will be encoded as 'map' instead
Cannot encode 'value' element as 'hash'. Will be encoded as 'map' instead
Calling run()...
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 6,
'is_running' => 1,
'links_processed' => 0,
'percent_complete' => '0.00%',
'is_compromised' => 0,
'relative_links_remaining' => 1,
'links_total' => 6
};
Sleeping for 2s...
Calling getStatus()...
Result:
$VAR1 = {
'links_remaining' => 5,
'is_running' => 0,
'links_processed' => 1,
'percent_complete' => '16.67%',
'is_compromised' => 1,
'relative_links_remaining' => 1,
'links_total' => 6,
'fingerprint' => {
'last_resource' => 'http://www.cnn.com/',
'time_at' => '2009-10-08 12:26:28.745',
'os_processes' => [
{
'stopped' => '2009-10-08 12:26:36.839',
'pid' => '1968',
'regkeys' => [],
'name' => 'C:\WINDOWS\system32\imapi.exe',
'process_files' => [
{
'name' => 'C:\WINDOWS\Temp\kr4dmxsh.TMP',
'file_content' => {
'sha1' => 'C:\WINDOWS\Temp\kr4dmxsh.TMP2009-10-08 12:26:28.745',
'md5' => 'C:\WINDOWS\Temp\kr4dmxsh.TMP2009-10-08 12:26:28.745',
'size' => -1,
'mime_type' => 'UNKNOWN'
},
'event' => 'Write',
'time_at' => '2009-10-08 12:26:28.745'
}
]
},
{
'created' => '2009-10-08 12:26:29.964',
'pid' => '548',
'parent_name' => 'C:\WINDOWS\system32\svchost.exe',
'regkeys' => [],
'name' => 'C:\WINDOWS\system32\wscntfy.exe',
'parent_pid' => '1036',
'process_files' => []
}
]
}
};
WARNING: VM HAS BEEN COMPROMISED!
2009-10-08 12:27:13 WARN HoneyClient::Manager::runSession - VM Compromised. Last Resource (http://www.cnn.com/)
2009-10-08 12:27:13 INFO HoneyClient::Manager::runSession - Saving fingerprint to 'fingerprint.dump'.
2009-10-08 12:27:13 INFO HoneyClient::Manager::runSession - Archiving VM...
2009-10-08 12:27:35 INFO HoneyClient::Manager::VM::snapshotVM - Snapshotting VM (/vm/clones/5ef32a23cad9915e93e8b23739/master.vmx) to (/vm/snapshots/5ef32a23cad9915e93e8b23739-20091008T122735.tar.gz).
2009-10-08 12:27:36 INFO HoneyClient::Manager::runSession - Saving URL History to Database.
2009-10-08 12:27:36 INFO HoneyClient::Manager::insert_url_history - 1 URL(s) Inserted.
2009-10-08 12:27:36 INFO HoneyClient::Manager::runSession - Inserting Fingerprint Into Database.
2009-10-08 12:27:36 INFO HoneyClient::Manager::runSession - Database Insert Successful.
Starting new session...
2009-10-08 12:27:37 INFO HoneyClient::Manager::VM::Clone::new - Setting VM (/vm/master/master.vmx) as master.
2009-10-08 12:27:54 INFO HoneyClient::Manager::VM::Clone::_init - Quick cloning master VM (/vm/master/master.vmx).
/bin/tar: 5ef32a23cad9915e93e8b23739/master.vmem: file changed as we read it
2009-10-08 12:28:02 WARN HoneyClient::Manager::VM::ANON - Could not snapshot VM to (/vm/snapshots/5ef32a23cad9915e93e8b23739-20091008T122735.tar.gz). (256: )
2009-10-08 12:28:02 ERROR HoneyClient::Util::SOAP::_handleFault - Error occurred during processing. HoneyClient::Manager::VM->snapshotVM(): Could not snapshot VM to (/vm/snapshots/5ef32a23cad9915e93e8b23739-20091008T122735.tar.gz).
HoneyClient::Manager::VM->snapshotVM(): {'err' => bless( {'errNo' => '256','errStr' => ''}, 'err' )}
HoneyClient::Util::SOAP->handleFault(): Error occurred during processing.
HoneyClient::Manager::VM->snapshotVM(): Could not snapshot VM to (/vm/snapshots/5ef32a23cad9915e93e8b23739-20091008T122735.tar.gz).
HoneyClient::Manager::VM->snapshotVM(): {'err' => bless( {'errNo' => '256','errStr' => ''}, 'err' )}
Killed
}}}

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions