losange
2009年04月23日
个人
这段时间一直在寝室闭关做毕设,时光倏忽,人间四月天转瞬就要过了,可惜可惜!
经过数月的闭门苦思冥想,整日盯着那一页页比那天书还长的英文文档,双眼光芒四射,如今毕设终于初见端倪了。
撒花~~~
刚刚做实验的时候,碰到了个问题,现顺便记录下问题原型和解绝方法:
OGSA-DAI中有个SQLClient.java的例子,在Globus中部署好OGSA-DAI服务和一个关系数据库资源后,可以在终端调用以下命令执行SQL语句:
java uk.org.ogsadai.client.toolkit.example.SQLClient -u http://172.168.0.1:8080/wsrf/services/dai -d PostgresBookDB -q"SELECT * FROM littleblackbook WHERE id < 10;"
在Eclipse中运行SQLClient.java时,需要在运行配置中写入参数,即:
-u http://172.168.0.1:8080/wsrf/services/dai -d PostgresBookDB -q"SELECT * FROM littleblackbook WHERE id < 10;"
但运行后出现下面的错误:
DRER ID: DataRequestExecutionResource
Data Resource ID: PostgresBookDB
Base Services URL: http://172.168.0.1:8080/wsrf/services/dai
SQLQuery: SELECT * FROM littleblackbook WHERE id < 10;
A problem has occured...
[1240489322168:0] uk.org.ogsadai.RESOURCE_UNKNOWN_ERROR : null
Activity: uk.org.ogsadai.SQLQuery
Status: null
Activity: uk.org.ogsadai.TupleToWebRowSetCharArrays
Status: null
Activity: uk.org.ogsadai.CharArraysResize
Status: null
Activity: uk.org.ogsadai.DeliverToRequestStatus
Status: null
google了下知道还需要在虚拟机参数中加入 -Daxis.ClientConfigFile=client-config.wsdd,client-config.wsdd这个文件在$OGSADAI_HOME/deploy目录下,现在再次执行SQLClient.java,结果如下:
DRER ID: DataRequestExecutionResource
Data Resource ID: PostgresBookDB
Base Services URL: http://172.168.0.1:8080/wsrf/services/dai
SQLQuery: SELECT * FROM littleblackbook WHERE id < 10;
A problem has occured...
edu/emory/mathcs/backport/java/util/concurrent/ConcurrentMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentMap
Activity: uk.org.ogsadai.SQLQuery
Status: null
Activity: uk.org.ogsadai.TupleToWebRowSetCharArrays
Status: null
Activity: uk.org.ogsadai.CharArraysResize
Status: null
Activity: uk.org.ogsadai.DeliverToRequestStatus
Status: null
这是由于缺少edu.emory.mathcs.backport.java.util.concurrent.ConcurrentMap这个类的原因,所以再次google下这个类,是在backport-util-concurrent-2.2.jar包中,下载这个包添加到eclipse的构建类库中,运行成功:
DRER ID: DataRequestExecutionResource
Data Resource ID: PostgresBookDB
Base Services URL: http://172.168.0.1:8080/wsrf/services/dai
SQLQuery: SELECT * FROM littleblackbook WHERE id < 10;
uk.org.ogsadai.resource.request.status.COMPLETED
| id | name | address | phone |
| 1 | Ally Antonioletti | 101 Antonioletti Road, San Jose | 087192027 |
| 2 | Amy Atkinson | 70 Atkinson Crescent, Southampton | 0105931111 |
| 3 | Bartosz Chue Hong | 30 Chue Hong Gardens, Winchester | 04476816 |
| 4 | Craig Dobrzelecki | 72 Dobrzelecki Place, Edinburgh | 0311043554 |
| 5 | David Hume | 75 Hume Lane, San Jose | 02628860 |
| 6 | Elias Illingworth | 46 Illingworth Avenue, Southampton | 0423436125 |
| 7 | Kostas Jackson | 52 Jackson Drive, Winchester | 01071062664 |
| 8 | Malcolm Krause | 72 Krause Street, Edinburgh | 0121741579 |
| 9 | Mario Karasavvas | 13 Karasavvas Road, San Jose | 07191274 |
backport-util-concurrent-2.2.jar 下载
losange
2008年12月16日
个人
仅做记录!
搞了好久,才把Globus 在windows下的安装弄的有点头目,其实还是得静下心来仔细阅读文档。
1.下载:
apache-tomcat-5.5.27 : http://dev.xiaonei.com/apache-mirror/tomcat/tomcat-5/v5.5.27/bin/apache-tomcat-5.5.27.zip
ws-core-4.2.1 : http://www-unix.globus.org/toolkit/survey/index.php?download=ws-core-4.2.1-bin.zip
ws-mds和wsrf(cvs address): :pserver:anonymous@cvs.globus.org:/home/globdev/CVS/globus-packages
apache-ant-1.7.1 : http://apache.freelamp.com/ant/binaries/apache-ant-1.7.1-bin.zip
jdk-6u11-windows-i586 : http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u11-windows-i586-p.exe?BundledLineItemUUID=.JdIBe.lenIAAAEdqQclFP_B&OrderID=4e1IBe.lCIkAAAEdngclFP_B&ProductID=DY5IBe.ogAkAAAEdcjBGb7Et&FileName=/jdk-6u11-windows-i586-p.exe
2.修改环境变量:
JAVAHOME : 你的jdk路径
CLASSPATH : .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
CATALINA_HOME : 你的tomcat路径
GLOBUS_LOCATION : 你的ws-core-4.2.1 路径
ANT_HOME : 你的apache-ant-1.7.1 路径
PATH : %GLOBUS_LOCATION%\bin;%JAVA_HOME%\bin;%JAVA_HOME%\lib;%ANT_HOME%\bin;%CATALINA_HOME%\bin
3.配置:
ws-core-4.2.1 :修改ws-core-4.2.1\etc\globus_wsrf_core\server-config.wsdd文件,在<globalConfiguration>标签内添加
<parameter name="logicalHost" value="127.0.0.1"/> ,表示你的服务将发布在127.0.0.1
ws-mds :进入ws-mds文件夹,在命令行运行ant deploy,会把ws-mds部署到你的ws-core-4.2.1/lib文件下
其中wsrf里的文件将在ws-mds部署时用到。
修改%GLOBUS_LOCATION%\lib\webmds\conf\indexinfo文件,把倒数第三行修改为 <value>http://127.0.0.1:8443/wsrf/services/DefaultIndexService</value>
tomcat : 复制ws-core-4.2.1\endorsed\下的三个jar包到apache-tomcat-5.5.27\common\endorsed文件夹
4.部署java-ws-core到tomcat :
cd %GLOBUS_LOCATION%
ant -f share/globus_wsrf_common/tomcat/tomcat.xml deploySecureTomcat -Dtomcat.dir=%CATALINA_HOME%
5.部署webmds到tomcat:
运行:%GLOBUS_LOCATION%\lib\webmds\bin\webmds-create-context-file %CATALINA_HOME%\conf\Catalina\localhost
6.启动globus container:
globus-start-container -nosec -p 8443
7.启动tomcat,查看webmds:
http://localhost:8080/webmds
8.注册已发布服务测试:
修改%GLOBUS_LOCATION%\etc\globus_wsrf_mds_aggregator\example-aggregator-registration.xml文件(先备份),把https://myhost:8443全部替换为 http://127.0.0.1:8443。 (注意:因为windows下的globus没有安全模块,所以https要替换为http)
命令行运行:mds-servicegroup-add %GLOBUS_LOCATION%\etc\globus_wsrf_mds_aggregator\example-aggregator-registration.xml
网格
losange
2008年09月02日
xss, 翻译
Ps:这几天回了趟家,翻译就有点拖了,得补上啊。今天翻译的文章有点黑,是一款XSS(Cross Site Script:跨站脚本)工具,望善用之。^_^
XSS Shell
原文地址:https://labs.portcullis.co.uk/application/xssshell/
XSS Shell 是一个强有力的XSS后门和僵尸管理者。这个概念最先由“XSS-Proxy - http://xss-proxy.sourceforge.net/”提出。XSS攻击者往往只有一个攻击目标,通过XSS Shell你就能交互的向被攻击者发送请求或接收应答。你也可以把一个页面作为你的一个后门。
你能够窃取到一个基本权限,也可以在管理页面上绕过IP限制,甚至你能够用一个长期存在的XSS漏洞来向一些系统发动DDoS 攻击(L.A.注:即有名的拒绝服务攻击),等等。攻击的成功率取决于你的想象。这个工具基本上只是向你展示了更多可以利用XSS做的东西。
特性
XSS Shell 中的一些特性能够侵入被攻击者。你也可以添加你自己的命令。
其中大多数的特性都能够通过配置来开启和关闭,或者你也可以在源代码中调节这些特性。
- 页面重构
- 这是XSS Shell中一个关键和高级特性。 XSS Shell 重新构建了被感染的页面,使得用户停留在一个虚拟假页面里。这样即使用户点击了受感染页面上任何的链接,他/她还是处于被控状态。(因为受跨域限制)在一般的XSS攻击中当用户离开页面时你将不能任何事。
- 第二点,这个特性也保持了会话,所以即使被攻击者在感染页面中点击了一个外链,回话也不会超时,仍然在你的控制下。
- 按键记录
- 鼠标移动记录 (点击数 + 当前DOM)
- 内置命令;
- 获得按键记录数据
- 获得当前页面 (当前提交的 DOM /比如说快照)
- 获取 Cookie
- 执行提供的javaScript (eval)
- 获得剪切板中的内容(仅限IE)
- 获得内部 IP 地址(仅限Firefox + JVM)
- 检查被攻击者访问的网页历史记录
安装
XSS Shell 使用ASP+MS Access数据库作为后台,但你只是需要维持连接协议,就能够容易的把它改成其它服务器方案。
安装管理员界面
- 复制"xssshell" 文件夹到你的网页服务器
- 复制 "db" 到一个安全的地方 (根目录下)
- 配置 "xssshell/db.asp" 中的"database path"
- 在db.asp中修改编码过的密码 [默认密码 : w00t]
- 现在你便能够访问地址 http://[YOURHOST]/xssshell/ 登入管理员界面
配置 XSS Shell使能够通信
- 打开 xssshell.asp
- 设置 "SERVER" 变量为你的XSSShell 文件夹目录。 例: "http://[YOURHOST]/xssshell/";
- 确保核对了"ME", "CONNECTOR", "COMMANDS_URL" 这三个变量。 如果你因为其它一些配置而改变了文件名就需要修改他们。
现在在你的浏览器中打开管理员页面。
开始测试,修改"sample_victim/default.asp"中的源代码,用你自己的XSS Shell地址替换 “http://attacker:81/release/xssshell.js”。在一些其它的浏览器中打开"sample_victim"文件夹,或者可能上传到其它的服务器中进行测试。
现在你就能在管理界面中看到一台僵尸机。在"parameters"区域任意填写,点击"alert()",你应该能够在被攻击者页面中看到弹出信息。
安全注意:
做为一个狩猎者小心getSelfHTML()中可能的反作用。一些人可以在背后黑你或使用另一个XSS跟踪你或用XSS Shell攻击。
检查"showdata.asp" 并且实现你自己的 "filter()" 函数来提高安全性。
把 "On error resume next" 这句话放到 db.asp,更好的改善服务器使得不显示任何的错误信息。
怎样进行扩展
首先在xssshell.asp实现以下新特性
- 为你的控制单元添加新的枚举项
- 设置一个名字和唯一的数字,比如"CMD_GETCOOKIE"
- var CMD_SAMPLE = 78;
- 为你的应答设置数据类型(一般是 TEXT),
- dataTypes[CMD_SAMPLE] = TEXT;
- 在页面中添加你自己写的函数
- function cmdSample(){return "yeah working !"}
- 调用
- 进入 "function processGivenCommand(cmd)"
- 添加一个新实例,如 "case CMD_SAMPLE:"
- 反馈
- 在实例调用日志中;
"log(cmdSample(), dataTypes[cmd.cmd], cmd.attackID, "waitAndRun()");"
管理员界面的再次实现
- 在 db.asp 中为"Commands"数组添加一个新元素(命令名, 命令唯一的数字, 描述)。例: "cmdSample()",78,"Command sample ! Just returns a message"
在代码中有很多注释和参数,所以在引用时请仔细核对其它的命令。
开启调试特性,使得调试你的新命令变得简单。
其它参考资料
- moo.ajax -moofx.mad4milk.net
- script.aculo.us - (http://script.aculo.us, http://mir.aculo.us)

xss