From 74e4812946fa0c26514e4c876c6e6a39bb84d05f Mon Sep 17 00:00:00 2001 From: Raphael Mudge Date: Wed, 16 May 2012 04:23:21 -0400 Subject: [PATCH] add color to armitage's presentation of the Metasploit console --- data/armitage/armitage.jar | Bin 2882356 -> 2887178 bytes data/armitage/whatsnew.txt | 12 ++ external/source/armitage/resources/about.html | 2 +- .../source/armitage/resources/armitage.prop | 26 +++- .../source/armitage/resources/eventlog.style | 4 + .../armitage/resources/msfconsole.style | 11 ++ .../source/armitage/scripts/collaborate.sl | 1 + external/source/armitage/scripts/loot.sl | 9 +- .../source/armitage/scripts/meterpreter.sl | 1 + external/source/armitage/scripts/util.sl | 24 +++ .../src/armitage/ArmitageApplication.java | 15 +- .../armitage/src/armitage/ArmitageMain.java | 6 + .../source/armitage/src/console/Colors.java | 138 ++++++++++++++++++ .../source/armitage/src/console/Console.java | 107 +++++++++++--- .../source/armitage/src/console/Display.java | 47 ++---- external/source/armitage/whatsnew.txt | 12 ++ 16 files changed, 344 insertions(+), 71 deletions(-) create mode 100644 external/source/armitage/resources/eventlog.style create mode 100644 external/source/armitage/resources/msfconsole.style create mode 100644 external/source/armitage/src/console/Colors.java diff --git a/data/armitage/armitage.jar b/data/armitage/armitage.jar index db7e265946134e16173c31e33bbd3200a04af589..b314c4462f882650eb563e9269a82a4c9f5e7449 100755 GIT binary patch delta 86445 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

6#JYmb6ByRSZ{IvgGgc!h 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

!%eMv1PC9~Z-!uXoHXF;_}n0+w!d=bPm(x3%- zy69HXJ0#w&VX$1FtP9|DiB5I8?yOl(*;|O|bb6LcI7h}h9|rvghT3?|upHWH@5ysN z2c^x4dFjD3#n+VX^yji)H@V!FKlPWY^p}f573%a(xZ)8d2cugKA<a7{_h;K9+)oCo7FXy~;@%l=GHz zo%3WEvT5yg0SV_FNv`JBGuTyw?04i4{%OpD^{=TIG2=f1`JyuOE zF;>$I4ZxAp^#~i6(KNI`;(4;iU|J2%I zuC?y`(cFWVAi$g$srM&Lc-(E@a6ENQg50qK+kF1Cr2a?=Qh>mt0>$)$g)MZI$vv~{ zK0b;4U{IEB3|sr#MX%_Pwc=8U^JA4%yb~8-*jQGFdr%gH1+eCbock7XX6w2fc=|)<(fv-eYOlU7P#J5KJeKHBT>Mb{e^8ZXReYo`%bN}D>YQPLm516W# zergHXF@69~&nNS{0e>lqZd{ROG5A~8IWzsOC!4(b`}gq!+@E~4yePC80r+aMKC+Y9 zB2;5U%zp~#8G_Zl@b1aDUndbOCrf6yd+aqkhdx>Diqx>cd8*S_r0i)@0SPN&{_gU` zh2XLP!^Fmtlniw(p>BLf+IZ;~5x^gzdtPf@kL*sT!Su7j;~kUSK75g~=()t#{GuEO zX_n-Q&^!@V9y`f`6OaQ?ZCqKs%HxcRFdVlM!5P34MGUs=V>=Z`Rlx&E(=u@pW( z;;jfwu+>O}LR>>I*SITj5C1S=F2t6(L-kHIPQxW@-N9GRiNVgGP0cG4B>;$d85CuQlcCxk#9E&wS_swY!l zGKhJ`7-wDIJ>pH7LgQ(ciOL@8e&`punEb1rMhCaPz?OZP4;@Ei*UIkidk{OOSe~Oc zFfBdUdkqTIw~~IFXC#-1auKyh>e8?9;B85K#JOKW7M4PEAv{_p*uO#TP#GsQ_8P|r ze6XEGdEl-32JQce=1#OF%+WWR<{ElIWq#ge$kUq*u+rdcsbsSYyP zgSXXvvEg-if{*+AOwp0kUG@rX2i)tU*;*e1orH>H@`5+p+`B;#Zhn|8$< zww+mMY~)X9StrA=g^q$%?f(Y-4bk|*og`J~S;#)Z02>xHT`W;2>!#&h_>{C-${XQ{5066@YKrbbZv~Iex0N7W&2!)-Xo~c$r>Btx zXQkoL7{tYPw{5baK`ezzXxbL*;GdPM$gab{3m3uxT{EnD3e>?n>>FmQ%~2l3DoFj8 z9+S|JE4pdig(zq`f;COv2=!PVGOpXX)wq3wJJ?Db@Jv#GH!RhI_0-9Rwd%xjzMJ46>hS#*G)|>6By$yaQBq)lGjNuf} zFS-$WZG>rScg}ejESABCxY@R{1%i27cJx(F5#6ZcM9guGiG|ieeoxDb0moK?g|yst z3-StGf6JXNUE@*8`CS_G6iC2t8wTVV#QZWDuws#!0@Ahv;#ZCWpr^gKMY>o117OIM z=l=pM{0*?;zYy-_39L-Vo#QdK4k!N$U&mMYM!wDH_Xd~cmyFX$-i8>qraRyoTeB;M z>5SaEs>T@RIhlMrIF!8e|K1+_&jV!+yjGgCX`!6oL0j$J9a|mob6LyM)>50h=5n{# zZIi5^;X|Yzt@*N&{f|%F2?YIW3j_#e*^~+ z2OW8AH~!Z<^ZKo?Cct1X z49(9Zzvu+4;7)~;VK$BTu!`eU>I7{;b46R}6+n}609Hu)TZJ-0aQgYj@3Q%%W>>Lk zO9X08)58!jHdgI$CYrXs*saYAS6=pPhC1doqh%)s9{b+xhx>5>@*u@9>Ivuyo?{vm z&-w2MsN@{CDLe0U_*sVH0<_7Z?CdDDd#G z(t!NtXwtUeq#6B3C-Vle+(xX@C8&0Z>xqz>YgUIt)FO&cdz%sev=6C#v++paV_29L z0{Mtf;5Dm7wq_%PbJ*z7h)^F1)RZE|gZ992+NGrEIpq=zs7kD&6OX9VwYm$hsJk

y{7rx@m%A+x;^G{62UvV!OV`kFFg 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

w-y{xbWtsI7)dz*c=Ehz6N0WR$|-h+ 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 HQS$!*!N43N delta 82345 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 diff --git a/data/armitage/whatsnew.txt b/data/armitage/whatsnew.txt index 013ab97d00..35cc15e96f 100755 --- a/data/armitage/whatsnew.txt +++ b/data/armitage/whatsnew.txt @@ -1,6 +1,18 @@ Armitage Changelog ================== +17 May 12 +--------- +- Fixed bug with loot/download viewer breaking with a font resize. +- Default console font color is now grey. I never noticed that I had + white text on a black background before. That's a lot of contrast. + This is adjustable too through Armitage -> Preferences. +- And... the Armitage console now displays pretty colors. If you don't + like colors, set the console.show_colors.boolean preference to false + through Armitage -> Preferences. +- Fixed a bug preventing input field from getting focus when popping a + console tab using Ctrl+W. + 14 May 12 --------- - Oopserific--dynamic workspace shortcuts were not bound until you diff --git a/external/source/armitage/resources/about.html b/external/source/armitage/resources/about.html index 9cd7e982be..3abdcdba66 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: 14 May 12

+
Release: 17 May 12


Developed by:

diff --git a/external/source/armitage/resources/armitage.prop b/external/source/armitage/resources/armitage.prop index b7578eacec..c6e4294c8d 100644 --- a/external/source/armitage/resources/armitage.prop +++ b/external/source/armitage/resources/armitage.prop @@ -16,7 +16,7 @@ console.page_up.shortcut=pressed PAGE_UP console.highlight.color=\#0000cc console.font_size_plus.shortcut=ctrl pressed EQUALS console.font_size_minus.shortcut=ctrl pressed MINUS -console.foreground.color=\#ffffff +console.foreground.color=\#cccccc console.background.color=\#000000 console.font.font=Monospaced-BOLD-14 graph.arrange_icons_hierarchical.shortcut=ctrl pressed H @@ -39,10 +39,20 @@ armitage.no_msf_banner.boolean=false tab.highlight.color=#0000ff armitage.show_all_commands.boolean=true armitage.application_title.string=Armitage -console.color_0.color=#000000 -console.color_1.color=#ffffff -console.color_2.color=#0000ff -console.color_3.color=#00ff00 -console.color_4.color=#ff0000 -console.color_5.color=#ffff00 -console.color_6.color=#ff00ff +console.color_0.color=\#ffffff +console.color_1.color=\#000000 +console.color_2.color=\#000080 +console.color_3.color=\#009000 +console.color_4.color=\#ff0000 +console.color_5.color=\#800000 +console.color_6.color=\#a000a0 +console.color_7.color=\#ff8000 +console.color_8.color=\#ffff00 +console.color_9.color=\#00ff00 +console.color_10.color=\#009090 +console.color_11.color=\#00ffff +console.color_12.color=\#0000ff +console.color_13.color=\#ff00ff +console.color_14.color=\#808080 +console.color_15.color=\#c0c0c0 +console.show_colors.boolean=true diff --git a/external/source/armitage/resources/eventlog.style b/external/source/armitage/resources/eventlog.style new file mode 100644 index 0000000000..2591bef2a5 --- /dev/null +++ b/external/source/armitage/resources/eventlog.style @@ -0,0 +1,4 @@ +^(..:..:..) \[\*\] (.*) $1 \cA[*]\o $2 +^\[\*\] (.*) \cA[*]\o $1 +^(..:..:..) \* (.*) $1 \c7*\o $2 +^(\w+)> \u$1\o> diff --git a/external/source/armitage/resources/msfconsole.style b/external/source/armitage/resources/msfconsole.style new file mode 100644 index 0000000000..18c7d18fb8 --- /dev/null +++ b/external/source/armitage/resources/msfconsole.style @@ -0,0 +1,11 @@ +^msf> \umsf\u> +^meterpreter > \umeterpreter\u > +^msf > \umsf\u > +^msf (.*?)\((.*?)\) > \umsf\u $1(\c4$2\o) > +^\[\*\] (.*) \cA[*]\o $1 +^\[\+\] (.*) \c9[+]\o $1 +^\[\-\] (.*) \c4[-]\o $1 +^ =\[ (.*) =[\c7 $1 +^(=[=\s]+) \cE$1 +^(\s*-[-\s]+) \cE$1 +^(.*?): (.*) $1\cE:\o $2 diff --git a/external/source/armitage/scripts/collaborate.sl b/external/source/armitage/scripts/collaborate.sl index 2049ac9497..d5958f386c 100644 --- a/external/source/armitage/scripts/collaborate.sl +++ b/external/source/armitage/scripts/collaborate.sl @@ -13,6 +13,7 @@ sub createEventLogTab { if ($client is $null && $console is $null) { $client = [new ConsoleClient: $null, $mclient, "armitage.poll", "armitage.push", $null, "", $null]; $console = [new ActivityConsole: $preferences]; + setupEventStyle($console); logCheck($console, "all", "events"); [$client setWindow: $console]; [$client setEcho: $null]; diff --git a/external/source/armitage/scripts/loot.sl b/external/source/armitage/scripts/loot.sl index babb918862..82a1682ce5 100644 --- a/external/source/armitage/scripts/loot.sl +++ b/external/source/armitage/scripts/loot.sl @@ -76,17 +76,16 @@ sub _postLoot { local('$host $location $name $type $when'); ($host, $location, $name, $type, $when) = $1; - [$2 append: " + [$2 append: "\c9 # # $host $+ : $name -# -", "3", "#00ff00"]; +#\n"]; if ("*binary*" iswm $type) { - [$2 append: "This is a binary file\n", "4", "#ff0000"]; + [$2 append: "\c4This is a binary file\n"]; } else { - [$2 append: getFileContent($location), $null, $null]; + [$2 append: getFileContent($location)]; } } diff --git a/external/source/armitage/scripts/meterpreter.sl b/external/source/armitage/scripts/meterpreter.sl index 3f24158303..af2e3fd056 100644 --- a/external/source/armitage/scripts/meterpreter.sl +++ b/external/source/armitage/scripts/meterpreter.sl @@ -116,6 +116,7 @@ sub createMeterpreterTab { # set up a meterpreter console window $console = [new Console: $preferences]; + setupConsoleStyle($console); logCheck($console, sessionToHost($1), "meterpreter_ $+ $1"); [$console setPopupMenu: lambda(&meterpreterPopup, $session => sessionData($1), $sid => $1)]; diff --git a/external/source/armitage/scripts/util.sl b/external/source/armitage/scripts/util.sl index d22e4f4c5c..1887195a0c 100644 --- a/external/source/armitage/scripts/util.sl +++ b/external/source/armitage/scripts/util.sl @@ -69,10 +69,33 @@ sub cleanText { return tr($1, "\x01\x02", ""); } +sub setupConsoleStyle { + this('$style'); + if ($style is $null) { + local('$handle'); + $handle = [SleepUtils getIOHandle: resource("resources/msfconsole.style"), $null]; + $style = join("\n", readAll($handle)); + closef($handle); + } + [$1 setStyle: $style]; +} + +sub setupEventStyle { + this('$style'); + if ($style is $null) { + local('$handle'); + $handle = [SleepUtils getIOHandle: resource("resources/eventlog.style"), $null]; + $style = join("\n", readAll($handle)); + closef($handle); + } + [$1 setStyle: $style]; +} + sub createDisplayTab { local('$console $host $queue $file'); $queue = [new ConsoleQueue: $client]; $console = [new Console: $preferences]; + setupConsoleStyle($console); [$queue setDisplay: $console]; [new QueueTabCompletion: $console, $queue]; logCheck($console, iff($host, $host, "all"), iff($file, $file, strrep($1, " ", "_"))); @@ -84,6 +107,7 @@ sub createDisplayTab { sub createConsolePanel { local('$console $result $thread $1'); $console = [new Console: $preferences]; + setupConsoleStyle($console); $result = call($client, "console.create"); $thread = [new ConsoleClient: $console, $client, "console.read", "console.write", "console.destroy", $result['id'], $1]; diff --git a/external/source/armitage/src/armitage/ArmitageApplication.java b/external/source/armitage/src/armitage/ArmitageApplication.java index 0c73eec223..5a03bb683f 100644 --- a/external/source/armitage/src/armitage/ArmitageApplication.java +++ b/external/source/armitage/src/armitage/ArmitageApplication.java @@ -165,19 +165,30 @@ public class ArmitageApplication extends JFrame { i.remove(); /* pop goes the tab! */ - JFrame r = new JFrame(t.title); + final JFrame r = new JFrame(t.title); r.setIconImages(getIconImages()); r.setLayout(new BorderLayout()); r.add(t.component, BorderLayout.CENTER); r.pack(); - r.setVisible(true); r.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent ev) { if (t.removeListener != null) t.removeListener.actionPerformed(new ActionEvent(ev.getSource(), 0, "close")); } + + public void windowOpened(WindowEvent ev) { + r.setState(JFrame.NORMAL); + t.component.requestFocusInWindow(); + } + + public void windowActivated(WindowEvent ev) { + t.component.requestFocusInWindow(); + } }); + + r.setState(JFrame.ICONIFIED); + r.setVisible(true); } } } diff --git a/external/source/armitage/src/armitage/ArmitageMain.java b/external/source/armitage/src/armitage/ArmitageMain.java index 8dc727987a..71a0a30482 100644 --- a/external/source/armitage/src/armitage/ArmitageMain.java +++ b/external/source/armitage/src/armitage/ArmitageMain.java @@ -6,6 +6,7 @@ import sleep.console.*; import sleep.bridges.*; import sleep.error.*; import sleep.engine.*; +import sleep.parser.ParserConfig; import java.util.*; @@ -79,6 +80,11 @@ public class ArmitageMain implements RuntimeWarningWatcher, Loadable, Function { } public ArmitageMain(String[] args) { + /* tweak the parser to recognize a few useful escapes */ + ParserConfig.installEscapeConstant('c', console.Colors.color + ""); + ParserConfig.installEscapeConstant('o', console.Colors.cancel + ""); + + /* setup a function or two */ Hashtable environment = new Hashtable(); environment.put("&resource", this); diff --git a/external/source/armitage/src/console/Colors.java b/external/source/armitage/src/console/Colors.java new file mode 100644 index 0000000000..8596e730b1 --- /dev/null +++ b/external/source/armitage/src/console/Colors.java @@ -0,0 +1,138 @@ +package console; + +import java.awt.*; +import java.awt.event.*; + +import javax.swing.*; +import javax.swing.text.*; + +/* a class for managing and parsing colors */ +public class Colors { + public static final char bold = (char)2; + public static final char underline = (char)31; + public static final char color = (char)3; + public static final char cancel = (char)15; + public static final char reverse = (char)22; + + private static final class Fragment { + protected SimpleAttributeSet attr = new SimpleAttributeSet(); + protected StringBuffer text = new StringBuffer(32); + protected Fragment next = null; + + public void advance() { + next = new Fragment(); + next.attr = (SimpleAttributeSet)attr.clone(); + } + } + + protected boolean showcolors = true; + + public Colors(java.util.Properties prefs) { + colorTable = new Color[16]; + colorTable[0] = Color.white; + colorTable[1] = new Color(0, 0, 0); + colorTable[2] = new Color(0, 0, 128); + colorTable[3] = new Color(0, 144, 0); + colorTable[4] = new Color(255, 0, 0); + colorTable[5] = new Color(128, 0, 0); + colorTable[6] = new Color(160, 0, 160); + colorTable[7] = new Color(255, 128, 0); + colorTable[8] = new Color(255, 255, 0); + colorTable[9] = new Color(0, 255, 0); + colorTable[10] = new Color(0, 144, 144); + colorTable[11] = new Color(0, 255, 255); + colorTable[12] = new Color(0, 0, 255); + colorTable[13] = new Color(255, 0, 255); + colorTable[14] = new Color(128, 128, 128); + colorTable[15] = Color.lightGray; + + for (int x = 0; x < 16; x++) { + String temps = prefs.getProperty("console.color_" + x + ".color", null); + //System.err.println("console.color_" + x + ".color=\\#" + Integer.toHexString(colorTable[x].getRGB()).substring(2)); + if (temps != null) { + colorTable[x] = Color.decode(temps); + } + } + + /* do we want to show colors or automatically strip all of them? */ + showcolors = "true".equals(prefs.getProperty("console.show_colors.boolean", "true")); + } + + protected Color colorTable[]; + + /* strip format codes from the text */ + public String strip(String text) { + StringBuffer buffer = new StringBuffer(text.length()); + Fragment f = parse(text); + while (f != null) { + buffer.append(f.text); + f = f.next; + } + return buffer.toString(); + } + + public void append(JTextPane console, String text) { + StyledDocument doc = console.getStyledDocument(); + Fragment f = parse(text); + while (f != null) { + try { + if (f.text.length() > 0) + doc.insertString(doc.getLength(), f.text.toString(), showcolors ? f.attr : null); + } + catch (Exception ex) { + ex.printStackTrace(); + } + f = f.next; + } + } + + public void set(JTextPane console, String text) { + console.setText(""); + append(console, text); + } + + private Fragment parse(String text) { + Fragment current = new Fragment(); + Fragment first = current; + char[] data = text.toCharArray(); + int fore, back; + + for (int x = 0; x < data.length; x++) { + switch (data[x]) { + case bold: + current.advance(); + StyleConstants.setBold(current.next.attr, !StyleConstants.isBold(current.attr)); + current = current.next; + break; + case underline: + current.advance(); + StyleConstants.setUnderline(current.next.attr, !StyleConstants.isUnderline(current.attr)); + current = current.next; + break; + case color: /* look for 0-9a-f = 16 colors */ + current.advance(); + if ((x + 1) < data.length && ((data[x + 1] >= '0' && data[x + 1] <= '9') || (data[x + 1] >= 'A' && data[x + 1] <= 'F'))) { + int index = Integer.parseInt(data[x + 1] + "", 16); + StyleConstants.setForeground(current.next.attr, colorTable[index]); + x += 1; + } + current = current.next; + break; + case '\n': + current.advance(); + current = current.next; + current.attr = new SimpleAttributeSet(); + current.text.append(data[x]); + break; + case cancel: + current.advance(); + current = current.next; + current.attr = new SimpleAttributeSet(); + break; + default: + current.text.append(data[x]); + } + } + return first; + } +} diff --git a/external/source/armitage/src/console/Console.java b/external/source/armitage/src/console/Console.java index f8f2d24fc4..6c11052af7 100644 --- a/external/source/armitage/src/console/Console.java +++ b/external/source/armitage/src/console/Console.java @@ -11,19 +11,21 @@ import java.awt.event.*; import java.io.PrintStream; import java.util.*; +import java.util.regex.*; import armitage.Activity; /** A generic multi-feature console for use in the Armitage network attack tool */ public class Console extends JPanel implements FocusListener { - protected JTextArea console; + protected JTextPane console; protected JTextField input; - protected JLabel prompt; + protected JTextPane prompt; protected PrintStream log = null; protected Properties display; protected Font consoleFont; + protected Colors colors; protected ClickListener clickl; @@ -56,7 +58,7 @@ public class Console extends JPanel implements FocusListener { public ClickListener(Console parent) { this.parent = parent; } - + public void setPopup(ConsolePopup popup) { this.popup = popup; } @@ -120,7 +122,7 @@ public class Console extends JPanel implements FocusListener { String temp = data.substring(start, end).trim(); int a = temp.indexOf("\n"); if (a > 0) { - return temp.substring(0, a); + return temp.substring(0, a); } return temp; } @@ -139,6 +141,8 @@ public class Console extends JPanel implements FocusListener { } private void updateComponentLooks() { + colors = new Colors(display); + Color foreground = Color.decode(display.getProperty("console.foreground.color", "#ffffff")); Color background = Color.decode(display.getProperty("console.background.color", "#000000")); @@ -146,7 +150,10 @@ public class Console extends JPanel implements FocusListener { while (i.hasNext()) { JComponent component = (JComponent)i.next(); component.setForeground(foreground); - component.setBackground(background); + if (component == console || component == prompt) + component.setOpaque(false); + else + component.setBackground(background); component.setFont(consoleFont); if (component == console || component == prompt) { @@ -173,11 +180,11 @@ public class Console extends JPanel implements FocusListener { public void setPrompt(String text) { String bad = "\ufffd\ufffd"; if (text.equals(bad) || text.equals("null")) { - prompt.setText(defaultPrompt); + colors.set(prompt, fixText(defaultPrompt)); } else { defaultPrompt = text; - prompt.setText(text); + colors.set(prompt, fixText(text)); } } @@ -196,15 +203,64 @@ public class Console extends JPanel implements FocusListener { } } - protected void appendToConsole(String _text) { - if (_text.endsWith("\n") || _text.endsWith("\r")) { - if (!promptLock) { - console.append(_text); - if (log != null) - log.print(_text); + private static class Replacements { + public Pattern original; + public String replacer; + + public Replacements(String o, String r) { + original = Pattern.compile(o); + replacer = r; + } + } + + public void setStyle(String text) { + String lines[] = text.trim().split("\n"); + colorme = new Replacements[lines.length]; + for (int x = 0; x < lines.length; x++) { + String ab[] = lines[x].split("\\t+"); + if (ab.length == 2) { + ab[1] = ab[1].replace("\\c", Colors.color + ""); + ab[1] = ab[1].replace("\\o", Colors.cancel + ""); + ab[1] = ab[1].replace("\\u", Colors.underline + ""); + colorme[x] = new Replacements(ab[0], ab[1]); } else { - console.append(prompt.getText()); + System.err.println(lines[x] + "<-- didn't split right:" + ab.length); + } + } + } + + protected Replacements colorme[] = null; + + protected String fixText(String text) { + if (colorme == null) + return text; + + StringBuffer result = new StringBuffer(); + String[] lines = text.split("(?<=\\n)"); + + for (int x = 0; x < lines.length; x++) { + String temp = lines[x]; + for (int y = 0; y < colorme.length; y++) { + if (colorme[y] != null) + temp = colorme[y].original.matcher(temp).replaceFirst(colorme[y].replacer); + } + result.append(temp); + } + return result.toString(); + } + + protected void appendToConsole(String _text) { + _text = fixText(_text); + + if (_text.endsWith("\n") || _text.endsWith("\r")) { + if (!promptLock) { + colors.append(console, _text); + if (log != null) + log.print(colors.strip(_text)); + } + else { + colors.append(console, prompt.getText()); } if (!_text.startsWith(prompt.getText())) @@ -214,18 +270,17 @@ public class Console extends JPanel implements FocusListener { int breakp = _text.lastIndexOf("\n"); if (breakp != -1) { - console.append(_text.substring(0, breakp + 1)); - prompt.setText(_text.substring(breakp + 1) + " "); + colors.append(console, _text.substring(0, breakp + 1)); + colors.set(prompt, _text.substring(breakp + 1) + " "); if (log != null) - log.print(_text.substring(0, breakp + 1)); + log.print(colors.strip(_text.substring(0, breakp + 1))); } else { - prompt.setText(_text); + colors.set(prompt, _text); } promptLock = true; } - if (console.getDocument().getLength() >= 1) { console.setCaretPosition(console.getDocument().getLength() - 1); } @@ -276,9 +331,9 @@ public class Console extends JPanel implements FocusListener { /* init the console */ - console = new JTextArea(); + console = new JTextPane(); console.setEditable(false); - console.setLineWrap(true); + //console.setLineWrap(true); console.addFocusListener(this); JScrollPane scroll = new JScrollPane( @@ -290,7 +345,8 @@ public class Console extends JPanel implements FocusListener { /* init the prompt */ - prompt = new JLabel(); + prompt = new JTextPane(); + prompt.setEditable(false); /* init the input */ @@ -373,6 +429,13 @@ public class Console extends JPanel implements FocusListener { /* setup our word click listener */ clickl = new ClickListener(this); console.addMouseListener(clickl); + + /* work-around for Nimbus L&F */ + Color background = Color.decode(display.getProperty("console.background.color", "#000000")); + console.setBackground(new Color(0,0,0,0)); + prompt.setBackground(new Color(0,0,0,0)); + scroll.getViewport().setBackground(background); + console.setOpaque(false); } public JPopupMenu getPopupMenu(final JTextComponent _component) { diff --git a/external/source/armitage/src/console/Display.java b/external/source/armitage/src/console/Display.java index 861d0352d7..86f1b0906d 100644 --- a/external/source/armitage/src/console/Display.java +++ b/external/source/armitage/src/console/Display.java @@ -17,18 +17,24 @@ public class Display extends JPanel { protected JTextPane console; protected Properties display; protected Font consoleFont; + protected Colors colors; protected LinkedList components = new LinkedList(); private void updateComponentLooks() { + colors = new Colors(display); + Color foreground = Color.decode(display.getProperty("console.foreground.color", "#ffffff")); Color background = Color.decode(display.getProperty("console.background.color", "#000000")); Iterator i = components.iterator(); while (i.hasNext()) { JComponent component = (JComponent)i.next(); + if (component == console) + component.setOpaque(false); + else + component.setBackground(background); component.setForeground(foreground); - component.setBackground(background); component.setFont(consoleFont); if (component == console) { @@ -45,48 +51,23 @@ public class Display extends JPanel { } } - private static Map colors = new HashMap(); - - public static AttributeSet getColor(String index, Properties preferences, String def) { - synchronized (colors) { - if (colors.get(index) == null) { - SimpleAttributeSet attrs = new SimpleAttributeSet(); - Color temp = Color.decode(preferences.getProperty("console.color_" + index + ".color", def)); - StyleConstants.setForeground(attrs, temp); - colors.put(index, attrs); - } - return (SimpleAttributeSet)colors.get(index); - } - } - - public void append(final String text, final String index, final String fg) { + public void append(final String text) { if (SwingUtilities.isEventDispatchThread()) { - _append(text, index, fg); + _append(text); } else { SwingUtilities.invokeLater(new Runnable() { public void run() { - _append(text, index, fg); + _append(text); } }); } } - public void _append(String text, String index, String foreground) { - try { - Rectangle r = console.getVisibleRect(); - StyledDocument doc = console.getStyledDocument(); - if (foreground == null) { - doc.insertString(doc.getLength(), text, null); - } - else { - doc.insertString(doc.getLength(), text, getColor(index, display, foreground)); - } - console.scrollRectToVisible(r); - } - catch(Exception e) { - System.out.println(e); - } + public void _append(String text) { + Rectangle r = console.getVisibleRect(); + colors.append(console, text); + console.scrollRectToVisible(r); } public void setText(final String _text) { diff --git a/external/source/armitage/whatsnew.txt b/external/source/armitage/whatsnew.txt index 013ab97d00..35cc15e96f 100644 --- a/external/source/armitage/whatsnew.txt +++ b/external/source/armitage/whatsnew.txt @@ -1,6 +1,18 @@ Armitage Changelog ================== +17 May 12 +--------- +- Fixed bug with loot/download viewer breaking with a font resize. +- Default console font color is now grey. I never noticed that I had + white text on a black background before. That's a lot of contrast. + This is adjustable too through Armitage -> Preferences. +- And... the Armitage console now displays pretty colors. If you don't + like colors, set the console.show_colors.boolean preference to false + through Armitage -> Preferences. +- Fixed a bug preventing input field from getting focus when popping a + console tab using Ctrl+W. + 14 May 12 --------- - Oopserific--dynamic workspace shortcuts were not bound until you