diff --git a/data/armitage/armitage.jar b/data/armitage/armitage.jar index cc7e775c30..fdba5f0401 100755 Binary files a/data/armitage/armitage.jar and b/data/armitage/armitage.jar differ diff --git a/data/armitage/whatsnew.txt b/data/armitage/whatsnew.txt index ff59de7f42..355c6394a5 100755 --- a/data/armitage/whatsnew.txt +++ b/data/armitage/whatsnew.txt @@ -1,6 +1,14 @@ Armitage Changelog ================== +7 Jun 12 - Adding on to those quick bug fixes / tweaks +-------- +- Disabled Nagles algorithm for team server and client SSL sockets. + This makes team server much more responsive... trust me. +- Fixed bug preventing Armitage from showing "Started Service" + message when starting the SOCKS Proxy server. +- Fixed a find feature highlight bug in the View tab. + 30 May 12 - A few quick bug fixes / tweaks... --------- - Fixed an exception when killing a session or removing a route diff --git a/external/source/armitage/resources/about.html b/external/source/armitage/resources/about.html index 2e68618408..575effc437 100644 --- a/external/source/armitage/resources/about.html +++ b/external/source/armitage/resources/about.html @@ -3,7 +3,7 @@

Armitage 1.44-dev

An attack management tool for Metasploit® -
Release: 30 May 12

+
Release: 7 Jun 12


Developed by:

diff --git a/external/source/armitage/scripts/jobs.sl b/external/source/armitage/scripts/jobs.sl index ba44d1da67..1e7110d60b 100644 --- a/external/source/armitage/scripts/jobs.sl +++ b/external/source/armitage/scripts/jobs.sl @@ -450,21 +450,9 @@ sub _launch_dialog { } } else { - thread(lambda({ - local('$r'); - $r = call($client, "module.execute", $type, $command, $options); - if ("result" in $r) { - elog("started $command"); - showError($r["result"]); - } - else if ("job_id" in $r) { - elog("started $command"); - showError("Started service"); - } - else { - showError($r); - } - }, \$type, \$command, \$options)); + call_async($client, "module.execute", $type, $command, $options); + elog("started $command"); + showError("Started service"); } }, \$dialog, \$model, $title => $1, $type => $2, $command => $3, $visible => $4, \$combo, \$table, \$combobox)]; diff --git a/external/source/armitage/src/console/SearchPanel.java b/external/source/armitage/src/console/SearchPanel.java index d4f0056865..b517edfb44 100644 --- a/external/source/armitage/src/console/SearchPanel.java +++ b/external/source/armitage/src/console/SearchPanel.java @@ -12,7 +12,6 @@ import java.util.*; /** a search panel for use with a JTextComponent */ public class SearchPanel extends JPanel implements ActionListener { - protected JTextField search = null; protected JLabel status = null; protected JTextComponent component = null; @@ -70,16 +69,22 @@ public class SearchPanel extends JPanel implements ActionListener { return; Highlighter.HighlightPainter painter = new DefaultHighlighter.DefaultHighlightPainter( highlight ); - + try { String text = component.getText(); - int lastIndex = -1; - while ((lastIndex = text.replaceAll("\r", "").indexOf(searchstr, lastIndex + 1)) != -1) { + + /* another windows work-around... */ + if ((System.getProperty("os.name") + "").indexOf("Windows") != -1) { + text = text.replaceAll("\r\n", "\n"); + } + + int lastIndex = -1; + while ((lastIndex = text.indexOf(searchstr, lastIndex + 1)) != -1) { component.getHighlighter().addHighlight( - lastIndex, + lastIndex, lastIndex + searchstr.length(), painter); - } + } } catch (Exception ex) { // ... diff --git a/external/source/armitage/src/msf/MeterpreterSession.java b/external/source/armitage/src/msf/MeterpreterSession.java index 1d97e037f7..cb74cdd106 100644 --- a/external/source/armitage/src/msf/MeterpreterSession.java +++ b/external/source/armitage/src/msf/MeterpreterSession.java @@ -145,6 +145,10 @@ public class MeterpreterSession implements Runnable { readUntilSuccessful(c, false); return; } + else if (c.text.startsWith("sysinfo\n") && !teammode) { + readUntilSuccessful(c, false); + return; + } //System.err.println("(" + session + ") latency: " + (System.currentTimeMillis() - c.start) + " -- " + c.text); diff --git a/external/source/armitage/src/ssl/SecureServerSocket.java b/external/source/armitage/src/ssl/SecureServerSocket.java index 89278ded74..7db73a5b95 100644 --- a/external/source/armitage/src/ssl/SecureServerSocket.java +++ b/external/source/armitage/src/ssl/SecureServerSocket.java @@ -28,6 +28,7 @@ public class SecureServerSocket { public IOObject accept() { try { Socket client = server.accept(); + client.setTcpNoDelay(true); IOObject temp = new IOObject(); temp.openRead(client.getInputStream()); temp.openWrite(client.getOutputStream()); diff --git a/external/source/armitage/src/ssl/SecureSocket.java b/external/source/armitage/src/ssl/SecureSocket.java index 2dee60e54c..12230d4013 100644 --- a/external/source/armitage/src/ssl/SecureSocket.java +++ b/external/source/armitage/src/ssl/SecureSocket.java @@ -22,7 +22,7 @@ public class SecureSocket { SSLSocketFactory factory = (SSLSocketFactory) sslcontext.getSocketFactory(); socket = (SSLSocket)factory.createSocket(host, port); - + socket.setTcpNoDelay(true); socket.setSoTimeout(4048); socket.startHandshake(); } diff --git a/external/source/armitage/whatsnew.txt b/external/source/armitage/whatsnew.txt index ff59de7f42..355c6394a5 100644 --- a/external/source/armitage/whatsnew.txt +++ b/external/source/armitage/whatsnew.txt @@ -1,6 +1,14 @@ Armitage Changelog ================== +7 Jun 12 - Adding on to those quick bug fixes / tweaks +-------- +- Disabled Nagles algorithm for team server and client SSL sockets. + This makes team server much more responsive... trust me. +- Fixed bug preventing Armitage from showing "Started Service" + message when starting the SOCKS Proxy server. +- Fixed a find feature highlight bug in the View tab. + 30 May 12 - A few quick bug fixes / tweaks... --------- - Fixed an exception when killing a session or removing a route