banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận bảo mật Đánh đố HTML  XML
  [Question]   Đánh đố HTML 31/07/2009 06:03:30 (+0700) | #31 | 188143
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
Tình hình là đang dậm chân tại chỗ khúc function l11111l(l1111ll) giống anh nào đấy ở trên.
Search document.write thì thấy nghi ngờ khúc :
document.write(mineCount2);
tuy nhiên ko chơi alert như mấy lần trước được smilie
Tối nay về hy vọng xử được cái này.
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 31/07/2009 09:23:29 (+0700) | #32 | 188162
[Avatar]
H3x4
Member

[Minus]    0    [Plus]
Joined: 02/04/2009 00:03:16
Messages: 242
Offline
[Profile] [PM]
[quote=pdah
Search document.write thì thấy nghi ngờ khúc :
document.write(mineCount2);

 
Hì hì, bạn nghi ngờ đúng rồi smilie, các biến không được khai báo phải được document.write ra ở đâu đó, và nó đúng là chỗ đó smilie

Dùng Visual Web developer debug ta được giá trị của mineCount2:



Và run tới đó :



Như vậy ở đây ta có thêm các giá trị :

Code:
<script> var ll11ll11l = "var llIlIII = arguments.callee.toString(); var ll111ll = llIlIII + \"asec\" + location.hostname; var IIIIIII = 0;"; ll111II=eval; </script>



Kết hợp với các biến chưa có định nghĩa trong bài viết của anh LVH chắc sẽ có được đáp án !


[Up] [Print Copy]
  [Question]   Đánh đố HTML 31/07/2009 09:50:00 (+0700) | #33 | 188165
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
thanks bạn H3x4, ra đc cái password rồi, hơi bị dị ứng với mấy tool có chữ Visual nên phải viết script decode nó ra, hơi hardcore tí nhưng zui.
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 02/08/2009 03:42:16 (+0700) | #34 | 188309
mrro
Administrator

Joined: 27/12/2001 05:07:00
Messages: 745
Offline
[Profile] [PM]
@pdah: yeah :-D. cái điểm mấu chốt, khiến cho các bạn ở trên không làm được, là các bạn ấy cứ tưởng là thiếu code, nhưng thực ra một phần đoạn code đã được che đi mất rồi.

sao bạn pdah không viết một cái tutorial nho nhỏ cho cái challenge này nhỉ :-P.

-m
http://tinsang.net

TetCon 2013 http://tetcon.org

Làm an toàn thông tin thì học gì?/hvaonline/posts/list/42133.html
[Up] [Print Copy]
  [Question]   Đánh đố HTML 02/08/2009 04:51:05 (+0700) | #35 | 188318
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
Có nhiều người cũng giải ra được mà anh, em ko dám múa rìu đâu hehe
Hơn nữa sau khi share cái file HTML cho một vài bạn làm thì thấy các bạn dùng debugger khá nhiều, em chủ yếu viết code để decode nên cách làm dài dòng lắm. Ví dụ như bước đầu tiên, em viết 1 đoạn script để đọc được mã us-ascii thì bạn em nó dùng IE, open + save as là xong.
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 02/08/2009 07:13:32 (+0700) | #36 | 188329
StarGhost
Elite Member

[Minus]    0    [Plus]
Joined: 29/03/2005 20:34:22
Messages: 662
Location: The Queen
Offline
[Profile] [PM]

pdah wrote:
Có nhiều người cũng giải ra được mà anh, em ko dám múa rìu đâu hehe
Hơn nữa sau khi share cái file HTML cho một vài bạn làm thì thấy các bạn dùng debugger khá nhiều, em chủ yếu viết code để decode nên cách làm dài dòng lắm. Ví dụ như bước đầu tiên, em viết 1 đoạn script để đọc được mã us-ascii thì bạn em nó dùng IE, open + save as là xong. 

Ồ, thế mới là tốt chứ bạn. Bạn viết code bằng asm hay sao mà sợ dài dòng smilie Ngay đến C cũng chỉ vài dòng thôi chứ nhiều nhặn gì đâu. Quan trọng là phần explanation của bạn thôi. Có những cái mà nhiều người dùng tool thì sẽ không lý giải được.
Mind your thought.
[Up] [Print Copy]
  [Question]   Đánh đố HTML 02/08/2009 08:55:37 (+0700) | #37 | 188341
[Avatar]
linux_xxx
Member

[Minus]    0    [Plus]
Joined: 31/07/2009 00:03:31
Messages: 81
Location: nơi chân trời
Offline
[Profile] [PM] [Yahoo!]
smilie link down hết hạn rùi các bác ơi!kiếm cho em một cái link mới nhe! smilie
Tự do muôn năm!
[Up] [Print Copy]
  [Question]   Đánh đố HTML 02/08/2009 09:14:25 (+0700) | #38 | 188345
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
Em viết xong cái walkthrough rồi nhưng thấy có bạn đang định thử sức nên em khoan post nhé.
@linux_xxx : bạn chịu khó kéo lên trên 1 tí sẽ thấy có link mediafire mới được up lại.
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 08:37:54 (+0700) | #39 | 188453
[Avatar]
K4i
Moderator

Joined: 18/04/2006 09:32:13
Messages: 635
Location: Underground
Offline
[Profile] [PM]
Chiều nay mới ngồi nghịch đoạn HTML này xem thế nào. Thật ra thì mình không ngồi debug code mà sau khi decode được cái mớ vô thiên lủng đầu tiên, ngồi dò dò một lúc ra ngay được một đoạn mã hết sức "funny" smilie

http://scriptasylum.com/tutorials/encdec/encode-decode.html

Bạn nào chưa làm thì không nên đọc cái này smilie

Do khá dốt javascript :"> nên khi decode đoạn mã "funny" ở trên mình không thể viết script để decode ra nữa (vì không hiểu một phép toán của javascript) mà phải dùng debugger của IE mới ra :">
Sống là để không chết chứ không phải để trở thành anh hùng
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 09:19:22 (+0700) | #40 | 188458
[Avatar]
gsmth
Elite Member

[Minus]    0    [Plus]
Joined: 15/02/2007 13:25:36
Messages: 749
Offline
[Profile] [PM] [WWW] [Yahoo!]
mình cũng tìm ra password rồi: ASEC means ... decode cũng mất thời gian phết đấy smilie)
bạn pdah làm write-up cho nó đê hiii.
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 10:08:07 (+0700) | #41 | 188466
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
@gsmth : không biết có phải bác đang thử anh em không, nhưng cái từ sau chữ ASEC của bác .. sai rùi :p
Em post lên đây bản walkthrough của mình, anh em nào có cách làm tốt hơn cho từng bước thì góp ý nhé.
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 10:15:46 (+0700) | #42 | 188467
pdah
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 20:44:03
Messages: 47
Offline
[Profile] [PM]
1. Đọc nội dung file
------------------------
File index.html nguyên bản có tổng cộng 4 dòng. 'vi' em nó 1 phát thì thấy dòng 1,2,4 hoàn toàn bình thường, dòng 3 chỉ toàn ký tự khó hiểu.
Để ý trong phần <head> của file HTML, thấy bảng mã ký tự được sử dụng là US-ASCII, đây là bản mã ASCII chuẩn, chỉ sử dụng 7 bit đầu của một byte ký tự, bit thứ 8 bỏ qua. Tác giả đã cố ý bật bit cuối cùng này lên, vì vậy nếu ta mở file này bằng các chương trình editor thông thường hoặc browser không hỗ trợ bảng mã US-ASCII sẽ chỉ thầy một đống "bùi nhùi".
Để giải mã file này có 2 cách :
a. Dùng IE mở file này lên, save as thành file index1.html
b. Viết một đoạn script nho nhỏ như thế này :
Code:
#! /usr/bin/python
input = open("index.html", 'r')
s = ''
s += input.readline()
s += input.readline()
line3 = input.readline()
for x in line3 :
    s += chr(ord(x)&0x7f)
s += input.readline()
print s


Cho em nó chạy :
Code:
$ ./step1.py > index1.html


2. Cửa ải đầu tiên mang tên mineGame3
----------------------------------------------

Kéo chuột từ trên xuống dưới để kiểm tra file index1.html, lại thấy một đống bùi nhùi từ dòng 743. Thay hàm document.write bằng alert, ai dùng Firefox và có cài Firebug thì thay bằng console.log, dùng trình duyệt mở file này và thấy được nội dung :

Code:
<script>function dF(s){var s1=unescape(s.substr(0,s.length-1)); var t='';for(i=0;i<s1.length;i++)t+=String.fromCharcode(s1.charcodeAt(i)-s.substr(s.length-1,1));document.write(unescape(t));}</script>


Copy đoạn này lại và paste nó vào index1.html, ngay trước dòng
Code:
<SCRIPT LANGUAGE="JavaScript" id="mineGame3">


Đồng thời xóa đoạn code cũ đi, lại thay hàm document.write bằng alert hoặc console.log và mở bằng trình duyệt, ta thấy được nội dung này :
Code:
<script language=JavaScript>function l11111l(l1111ll){try{ll111II(ll11ll11l);for(var IIIlIII = 0; IIIlIII < ll111ll.length; IIIlIII++) { IIIIIII += ll111ll.charcodeAt(IIIlIII) }IIIIIII = IIIIIII % 200000;var lllIlll = new Array; lllIlll = l1111ll.split(",");var IIIIIll = ""; for(var IIIlIII = 0; IIIlIII < lllIlll.length; IIIlIII++) { IIIIIll += String.fromCharcode(((lllIlll[IIIlIII])-IIIIIII) ^ llIlIII.charcodeAt(IIIlIII%llIlIII.length));}var IIIlllI=IIIIIll.length,lIlIlIl,IIlllII,IlllIll,IlIlIlI=(512*2),llIlIIl=0,llIllll=0,lllllll=0;for(llIIIII= Math.ceil(IIIlllI/IlIlIlI);llIIIII>0;llIIIII--){IlllIll=''; for(lIlIlIl=Math.min(IIIlllI,IlIlIlI);lIlIlIl>0;  lIlIlIl--,IIIlllI--){lllllll|=(IIIlIIl[ IIIIIll.charcodeAt(llIlIIl++)-48])<<llIllll;if(llIllll){IlllIll+=String.fromCharcode(209^lllllll&255);lllllll>>=8;llIllll-=2}else{llIllll=6};} ll111II(IlllIll) } } catch(error) {}}</script><script language=JavaScript>var IIIlIIl=Array(63,12,6,53,0,48,43,54,42,47,0,0,0,0,0,0,59,13,25,30,50,60,1,18,61,8,16,56,20,49,51,21,45,28,22,31,35,5,14,23,27,37,2,0,0,0,0,55,0,11,33,9,19,40,41,15,62,3,39,10,32,17,44,36,24,7,52,26,29,58,57,46,4,34,38);l11111l("71496,71517,71488,71525,71484,71487,71467,71528,71541,71503,71531,71511,71530,71530,71546,71482,71515,71499,71531,71511,71442,71540,71525,71497,71516,71474,71507,71464,71441,71449,71525,71526,71542,71540,71546,71474,71443,71543,71477,71532,71506,71448,71448,71492,71546,71542,71486,71471,71455,71522,71455,71475,71565,71477,71459,71467,71464,71473,71488,71478,71473,71475,71452,71453,71548,71527,71524,71558,71554,71531,71450,71553,71502,71495,71450,71480,71445,71506,71558,71553,71481,71484,71509,71525,71563,71503,71448,71463,71474,71442,71454,71528,71473,71488,71454,71510,71484,71501,71450,71526,71489,71455,71458,71551,71549,71551,71537,71507,71562,71455,71450,71485,71567,71470,71553,71501,71554,71459,71565,71464,71443,71481,71562,71447,71537,71526,71486,71466,71481,71484,71498,71467,71455,71489,71523,71533,71446,71487,71553,71488,71443,71501,71485,71553,71562,71476,71513,71519,71445,71492,71458,71453,71480,71448,71451,71453,71464,71533,71512,71479,71460,71455,71488,71479,71567,71497,71512,71518,71554,71452,71554,71448,71449,71557,71561,71453,71447,71494,71447,71510,71497,71462,71485,71553,71494,71466,71469,71510,71449,71516,71527,71441,71454,71526,71442,71464,71506,71468,71471,71524,71465,71475,71477,71532,71498,71475,71448,71492,71561,71546,71538,71501,71562,71531,71531,71538,71502,71526,71552,71509,71513,71481,71474,71508,71529,71559,71550,71517,71538,71565,71495,71445,71484,71531,71553,71442,71468,71501,71568,71526,71536,71513,71527,71542,71552,71563,71534,71466,71484,71496,71461,71458,71508,71498,71462,71513,71554,71448,71442,71532,71498,71448,71475,71568,71542,71514")</script>

Nhìn thoáng qua đoạn này sẽ thấy có lời gọi hàm ll111II(), search nguyên file thì không thấy hàm này được định nghĩa ở đâu cả. Điều này chứng tỏ đoạn mã định nghĩa nó đã bị che đi bằng 1 cách nào đó.

3. Cửa ải thứ 2 mang tên mineGame2
----------------------------------------------
Trong cả 2 lần che dấu code trước, tác giả đểu dùng hàm document.write, vì vậy sao ta không thử tìm các hàm document.write khác xuất hiện trong file. Trong số kết quả tìm được, đáng nghi ngờ nhất hẳn là dòng này :

Code:
document.write(mineCount2);


Đi ngược lên một chút để xem mineCount2 là cái gì :
Code:
minelist2=document.getElementById('mineGame2').innerHTML.split('\r\n');		 					
mineCount2 = "";	  	  		
	  	  		
for(c=4; c < (e+4); c++)	 		 		 
{	  	  		
	mineName2=minelist2[c];	 		 		 
        	 		 		 
	for(f=0; f < d; f++)	 		 		 
	{		 					
		y = ((mineName2.length - (8*d)) + (f*8));		 	 	  
		v = 0;		 					
		for(x = 0; x < 8; x++)	 	   		
		{		 			 	
			if(mineName2.charcodeAt(x+y) > 9)	  				 
			{	   		  
				v++;	  		 	 
			}	  			  
			if(x != 7)	 	   		
			{		 			 	
				v = v << 1;		 					
			}		 	 	  
		}		 					
		mineCount2 += String.fromCharcode(v);	  	  		
	}	  	    
}	  			
document.write(mineCount2);

Bổn cũ soạn lại, thử quăng hàm alert vào, lần này chờ mãi ko thấy cái message box nào nhảy ra, nhìn kỹ lại code:
Code:
minelist2=document.getElementById('mineGame2').innerHTML.split('\r\n');

mineGame2 chính là id của thẻ script chứa đoạn mã này, hóa ra đoạn mã đang dùng chính nó để giải mã, dẫn đến việc thay đổi nội dung trong code chỉ có phản tác dụng mà thôi.

Thử copy nội dung của script đó ra 1 file mới ( đặt tên là mineGame2 ) và viết một đoạn giải mã tương đương bằng python để mã hóa nó :
Code:
#! /usr/bin/python
input = open("mineGame2", 'r')
d=1;
e=165;		    	 
mineCount2 = "";	  	  		
for i in xrange(0,4):
    input.readline()  	  		

for c in xrange(4,e+4) :
    mineName2 = input.readline()
    mineName2 = mineName2.replace("\r","");
    mineName2 = mineName2.replace("\n","");
    for f in xrange(0,d) :
        y = ((len(mineName2) - (8*d)) + (f*8))
        v = 0;		 					
        for x in xrange(0,8) :
            if ord(mineName2[x+y]) > 9 :
                v+=1
            if x != 7 :
                v = v << 1
        mineCount2 += chr(v)

print mineCount2;


Sau khi chạy đoạn script này có được kết quả :
Code:
cript> var ll11ll11l = "var llIlIII = arguments.callee.toString(); var ll111ll = llIlIII + \"asec\" + location.hostname; var IIIIIII = 0;"; ll111II=eval; </script>��

( Đến bây giờ em vẫn không hiểu sao cái đoạn kết quả này lại bị lệch mất 2 ký tự như vậy, nếu chèn thêm 2 dòng trống vào đầu file mineGame2 thì sẽ có kết quả đúng, dù sao thì toàn bộ đoạn code quan trọng đều đã được tìm thấy )

4. Dứt điểm
---------------
Tuy nhiên copy đoạn mã trên vào file index1.html thì mọi thứ vẫn trơ trơ ra đó, ko có cái password nào hiện ra cả.
Đành phải quay lại đoạn js lấy đc sau bước 2, beautify nó để dễ đọc 1 chút
Code:
function l11111l(l1111ll) {
    try {
        ll111II(ll11ll11l);
        for (var IIIlIII = 0; IIIlIII < ll111ll.length; IIIlIII++) {
            IIIIIII += ll111ll.charcodeAt(IIIlIII)
            }
        IIIIIII = IIIIIII % 200000;
        var lllIlll = new Array;
        lllIlll = l1111ll.split(",");
        var IIIIIll = "";
        for (var IIIlIII = 0; IIIlIII < lllIlll.length; IIIlIII++) {
            IIIIIll += String.fromCharcode(((lllIlll[IIIlIII]) - IIIIIII)^llIlIII.charcodeAt(IIIlIII % llIlIII.length));
        }
        var IIIlllI = IIIIIll.length,
        lIlIlIl,
        IIlllII,
        IlllIll,
        IlIlIlI = (512 * 2),
        llIlIIl = 0,
        llIllll = 0,
        lllllll = 0;
        for (llIIIII = Math.ceil(IIIlllI / IlIlIlI); llIIIII > 0; llIIIII--) {
            IlllIll = '';
            for (lIlIlIl = Math.min(IIIlllI, IlIlIlI); lIlIlIl > 0; lIlIlIl--, IIIlllI--) {
                lllllll | =(IIIlIIl[IIIIIll.charcodeAt(llIlIIl++) - 48]) << llIllll;
                if (llIllll) {
                    IlllIll += String.fromCharcode(209^lllllll & 255);
                    lllllll >>= 8;
                    llIllll -= 2
                } else {
                    llIllll = 6
                };
            }
            ll111II(IlllIll)
            }
    } catch(error) {}
}

Để ý hàm sau dòng try :
Code:
ll111II(ll11ll11l) 
tương đương với eval(ll11ll11l) 
tương đương với eval("var llIlIII = arguments.callee.toString(); var ll111ll = llIlIII + \"asec\" + location.hostname; var IIIIIII = 0;")

Có 2 giá trị cần phải lưu ý :
** arguments.callee.toString() : là mã nguồn của hàm đang chứa câu lệnh này, đó chính là hàm l11111l() ( lưu ý là mã nguồn *trước khi* beautify )
** location.hostname : lần ngược lên đầu file HTML sẽ thấy có thẻ <BASE HREF="http://ahnlab-security.com/game/"> suy ra location.hostname là ahnlab-security.com.

Ngoài ra để ý rằng hàm ll111II còn được sử dụng ở một vị trí khác trong hàm :
ll111II(IlllIll);
Thêm vào 1 dòng console.log hoặc alert để kiểm tra đoạn mã được thực thi là gì

console.log(IlllIll);
hoặc
alert(IlllIll);

Từ đó viết lại hàm l11111l() như sau ( các vị trí thay đổi được comment trong code )
Code:
function l11111l(l1111ll) {
    try {
        /* NEW code HERE */
        var llIlIII = "function l11111l(l1111ll){try{ll111II(ll11ll11l);for(var IIIlIII = 0; IIIlIII < ll111ll.length; IIIlIII++) { IIIIIII += ll111ll.charcodeAt(IIIlIII) }IIIIIII = IIIIIII % 200000;var lllIlll = new Array; lllIlll = l1111ll.split(\",\");var IIIIIll = \"\"; for(var IIIlIII = 0; IIIlIII < lllIlll.length; IIIlIII++) { IIIIIll += String.fromCharcode(((lllIlll[IIIlIII])-IIIIIII) ^ llIlIII.charcodeAt(IIIlIII%llIlIII.length));}var IIIlllI=IIIIIll.length,lIlIlIl,IIlllII,IlllIll,IlIlIlI=(512*2),llIlIIl=0,llIllll=0,lllllll=0;for(llIIIII= Math.ceil(IIIlllI/IlIlIlI);llIIIII>0;llIIIII--){IlllIll=''; for(lIlIlIl=Math.min(IIIlllI,IlIlIlI);lIlIlIl>0;  lIlIlIl--,IIIlllI--){lllllll|=(IIIlIIl[ IIIIIll.charcodeAt(llIlIIl++)-48])<<llIllll;if(llIllll){IlllIll+=String.fromCharcode(209^lllllll&255);lllllll>>=8;llIllll-=2}else{llIllll=6};} ll111II(IlllIll) } } catch(error) {}}"; 
        var ll111ll = llIlIII + "asec" + "ahnlab-security.com"; 
        /* END */
        var IIIIIII = 0;
        for (var IIIlIII = 0; IIIlIII < ll111ll.length; IIIlIII++) {
            IIIIIII += ll111ll.charcodeAt(IIIlIII)
            }

        IIIIIII = IIIIIII % 200000;
        var lllIlll = new Array;
        lllIlll = l1111ll.split(",");
        var IIIIIll = "";
        for (var IIIlIII = 0; IIIlIII < lllIlll.length; IIIlIII++) {
            IIIIIll += String.fromCharcode(((lllIlll[IIIlIII]) - IIIIIII)^llIlIII.charcodeAt(IIIlIII % llIlIII.length));
        }
        var IIIlllI = IIIIIll.length,
        lIlIlIl,
        IIlllII,
        IlllIll,
        IlIlIlI = (512 * 2),
        llIlIIl = 0,
        llIllll = 0,
        lllllll = 0;
        for (llIIIII = Math.ceil(IIIlllI / IlIlIlI); llIIIII > 0; llIIIII--) {
            IlllIll = '';
            for (lIlIlIl = Math.min(IIIlllI, IlIlIlI); lIlIlIl > 0; lIlIlIl--, IIIlllI--) {
                lllllll |=(IIIlIIl[IIIIIll.charcodeAt(llIlIIl++) - 48]) << llIllll;
                if (llIllll) {
                    IlllIll += String.fromCharcode(209^lllllll & 255);
                    lllllll >>= 8;
                    llIllll -= 2
                } else {
                    llIllll = 6
                };
            }
            ll111II(IlllIll);
            /* NEW code HERE */
            console.log(IlllIll);  
            /* END */
            }
    } catch(error) {}
}

Vào browser refresh 1 phát, ta thấy được đoạn mã được thực thi như sau :
Code:
function print_password() { alert('ASEC is AhnLab Security E-response Center'); } if( location.hash == '#ASEC' ) { print_password(); } else { alert('Good~! Go Go!'); }


Hết phim
Tui tư duy nên tui tồn tại
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 11:22:04 (+0700) | #43 | 188472
[Avatar]
K4i
Moderator

Joined: 18/04/2006 09:32:13
Messages: 635
Location: Underground
Offline
[Profile] [PM]
nice, guy smilie
Sống là để không chết chứ không phải để trở thành anh hùng
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 11:50:49 (+0700) | #44 | 188475
[Avatar]
bolzano_1989
Journalist

[Minus]    0    [Plus]
Joined: 30/01/2007 12:49:15
Messages: 1406
Offline
[Profile] [PM]
Exploit này các bugtraq như securityfocus đã có đề cập . MS đã có patch cho IE ngay sau đó .
Một minh họa đơn giản như trang này: http://www.iku-ag.de/ASCII
Nhân topic, cho em hỏi là trong những exploit cũ, làm sao biết những exploit nào đáng nghiên cứu lại vậy các anh ?
Kiểm tra các file bạn nghi ngờ có virus:
http://goo.gl/m3Fb6C
http://goo.gl/EqaZt
http://goo.gl/gEF8e
Nhận mẫu virus qua FB: http://goo.gl/70Xo23
HVA Malware Response Team: kiemtravirus@gmail.com
Trợ giúp diệt virus: http://goo.gl/2bqxY
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 12:01:52 (+0700) | #45 | 188476
mrro
Administrator

Joined: 27/12/2001 05:07:00
Messages: 745
Offline
[Profile] [PM]
@pdah: good job.

hồi trước mình dùng một cái javascript engine có tên là rhino (http://www.mozilla.org/rhino/) để chạy và debug trực tiếp mấy cái đoạn javascript luôn, khỏi phải dùng browser và cũng không cần phải viết thêm một chương trình riêng để decode cái đoạn mineGame2.

@bolzano_gateway: hằng năm bọn làm webapp sec đều có công bố danh sách mấy cái web hack hay nhất trong năm. cái vụ 8-bit char này cũng xuất phát từ bọn đó mà ra. mình thấy mấy cái đó cái nào cũng lý thú, đáng dành thời gian để tìm hiểu đó. bạn có thể xem danh sách các năm trên blog của thằng Jeremiah Grossman (http://jeremiahgrossman.blogspot.com/).

nếu được thì bạn căn cứ danh sách năm nay, mỗi danh sách làm một topic đi, rồi cùng nhau bàn về tụi nó. sẽ hay ho đó.

-m
http://tinsang.net

TetCon 2013 http://tetcon.org

Làm an toàn thông tin thì học gì?/hvaonline/posts/list/42133.html
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 12:27:09 (+0700) | #46 | 188477
[Avatar]
bolzano_1989
Journalist

[Minus]    0    [Plus]
Joined: 30/01/2007 12:49:15
Messages: 1406
Offline
[Profile] [PM]
Trình em còi, em đang cố học những cái cơ bản . Em chỉ ghé ngang đọc tin với nhờ các anh định hướng thôi anh ơi, cảm ơn anh nhé smilie .
Kiểm tra các file bạn nghi ngờ có virus:
http://goo.gl/m3Fb6C
http://goo.gl/EqaZt
http://goo.gl/gEF8e
Nhận mẫu virus qua FB: http://goo.gl/70Xo23
HVA Malware Response Team: kiemtravirus@gmail.com
Trợ giúp diệt virus: http://goo.gl/2bqxY
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 13:57:06 (+0700) | #47 | 188519
LeVuHoang
HVA Friend

Joined: 08/03/2003 16:54:07
Messages: 1155
Offline
[Profile] [PM]
Lâu rồi mới thấy topic này được đào mồ lên. Tui không có kinh nghiệm về javascript nên chỉ dừng ở đó thôi.
@pdah: good job. hehe
[Up] [Print Copy]
  [Question]   Đánh đố HTML 03/08/2009 15:59:20 (+0700) | #48 | 188537
[Avatar]
gamma95
Researcher

Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa&quot;&gt;
Offline
[Profile] [PM] [ICQ]

pdah wrote:
1
Để giải mã file này có 2 cách :
a. Dùng IE mở file này lên, save as thành file index1.html
b. Viết một đoạn script nho nhỏ như thế này :
Code:
#! /usr/bin/python
input = open("index.html", 'r')
s = ''
s += input.readline()
s += input.readline()
line3 = input.readline()
for x in line3 :
    s += chr(ord(x)&0x7f)
s += input.readline()
print s

 

Tổng quát nên dùng input.read() cho đỡ phải xử lý vụn vặt, ko phải xem trước để trừ dòng đầu, dòng cuối
Code:
#! /usr/bin/python
input = open("index.html", 'r')
s = ''
for x in input.read() :
	s += chr(ord(x)&0x7f)
print s

Hand job, clap clap
Cánh chym không mỏi
lol
[Up] [Print Copy]
  [Question]   Đánh đố HTML 26/09/2010 22:41:12 (+0700) | #49 | 221537
alakay
Member

[Minus]    0    [Plus]
Joined: 17/07/2010 11:13:54
Messages: 56
Offline
[Profile] [PM]
Ai đó úp lại dùm mình file html đi smilie
[Up] [Print Copy]
  [Question]   Đánh đố HTML 27/09/2010 09:14:50 (+0700) | #50 | 221555
[Avatar]
khanhqhi
Member

[Minus]    0    [Plus]
Joined: 27/05/2008 18:02:54
Messages: 27
Offline
[Profile] [PM] [Yahoo!]
Mình cũng muốn thử mà mấy link up lên toàn bị sao thôi
[Up] [Print Copy]
  [Question]   Đánh đố HTML 13/10/2010 19:50:52 (+0700) | #51 | 222779
tovanhien
Member

[Minus]    0    [Plus]
Joined: 30/07/2006 17:08:58
Messages: 3
Offline
[Profile] [PM]
các đại ca có ai có code free php không cho em xin với đang muốn thiết kê cho ong anh! minh lai tra thẹo mấy món này
[Up] [Print Copy]
  [Question]   Đánh đố HTML 20/12/2010 20:08:24 (+0700) | #52 | 227493
XuanHung_Cntt
Member

[Minus]    0    [Plus]
Joined: 09/01/2009 17:50:35
Messages: 13
Offline
[Profile] [PM]
Mấy bác còn cái file index.html đó nữa không? share cho em với! em cũng muốn thử vọc
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|