第十二章 免费午餐
南区的早晨从来没有寧静这个选项,窗外的警笛声、流浪汉翻找垃圾桶的碰撞声,还有隔壁加拉格家准时上演的鸡飞狗跳,交织成了一首粗糙的底层交响乐。
杨坚从裹成一团的旧毯子里伸出一条胳膊,烦躁地用力搓了搓脸,强行把自己从短暂且质量极差的睡眠中拔了出来。
他顶著一头乱髮,光著脚踩在冰凉的油毡地上,晃晃悠悠地走进厨房。
一把拉开那台嗡嗡作响的二手冰箱,里面还算充实。这得归功於昨天跟加拉格一家配合默契的零元购。昨晚虽然造掉了一块牛排,但货架上还稳稳噹噹地躺著那一打盒装鸡蛋,以及旁边堆著的两大袋全麦吐司。半桶快过期的牛奶则被孤零零地挤在角落。
“还好那天手够快……”杨坚嘟囔了一句,把牛奶倒进杯子里塞进微波炉。
隨后点燃老旧的燃气灶,把平底锅架在火上。拿起旁边快见底的烹飪油喷雾,对著锅底“呲呲”喷了两下。等油温一上来,利落地往锅里磕了两个鸡蛋。伴隨著底油发出悦耳的“滋滋”声响,边缘的蛋白迅速泛起一圈焦脆,他紧接著又顺手抽出两片全麦吐司,丟在平底锅边缘借著火候一起烘烤。
虽然没有高级培根,但边缘焦脆的太阳煎蛋配上烤得微热的吐司,再灌下一口热乎乎的牛奶,这顿碳水加蛋白质的组合在这个街区已经算得上是极其奢侈的豪华配置了。
一口咬下夹著热乎煎蛋的吐司,杨坚一边咀嚼,一边忍不住在心里琢磨:隔壁那帮加拉格们,这会儿大概正围著餐桌,为了抢最后一点牛奶泡麦片(frosted flakes)大打出手吧。
那玩意儿也就老美爱吃,玉米片上裹著厚厚一层糖霜,一口下去简直齁甜。他摇了摇头,咽下嘴里的食物暗自吐槽:美国街头上那么多胖子,估计一大半都得归功於这种工业流水线批量生產的廉价高糖早餐。
三两口解决掉盘子里的食物,胃里终於传来了久违的踏实感。但看著冰箱里肉眼可见在减少的存货,杨坚的心里却没有半分轻鬆。
靠运气薅来的羊毛总有吃完的一天,他总不能天天祈祷有蠢蛋送货司机把卡车停在门口吧?在这个烂泥潭一样的南区,要想真正活得像个人,解决长久的伙食和温饱问题,甚至摆脱隨时会被扫地出门的窘境,唯一的出路就是多搞钱。
怀揣著对赚刀乐的极度急迫与渴望,杨坚擦了擦嘴,转身坐到了那张有些摇晃的书桌前,打开电脑,將全部精力投入到了昨天未完成的测试环境搭建中。
杨坚就这么聚精会神地盯著屏幕敲击键盘,一晃眼就到了中午。
一上午的进展相当不错。在这颱风扇狂转的老旧戴尔上,他总算把那套臃肿的本地开发和测试环境给跑通了。看著指令行终端上如期弹出的那行乾乾净净的“hello world”,杨坚长长地舒了一口气,这意味著最折磨人的配置阶段终於结束,接下来就能放开手脚干正事了。
“呼……地基打好了。”他扭了扭发酸的脖子,手指习惯性地在桌面上敲击著节奏。
下一步才是真正的重头戏——不断尝试復现那个致命的 log4j漏洞。
说白了,这玩意儿的原理就像是欺骗一个极度死板、且有大声朗读强迫症的门卫。他不需要费劲去撬锁,只需要在输入框里填进一段精心构造的暗號。当负责记录的日誌系统(门卫)老老实实地把这段话读出来准备存档时,暗號就会被激活,直接从內部把系统的后门敞开。
只要能在终端里成功骗过这个门卫,让测试伺服器乖乖执行他发出的外部指令,这笔丰厚的漏洞赏金就算是稳妥地揣进兜里一半了。
正当他搓了搓手,准备开始编写脚本,批量往里塞暗號测试时。
“咚咚咚。”
门外突然响起了敲门声。
杨坚起身拉开那扇单薄的木门,有些意外地挑了挑眉。站在门外的,竟然是昨晚刚在隔壁度过了一个美好夜晚的大姐夫史蒂夫。
史蒂夫今天换了一身乾净的休閒装,看起来神清气爽,但眉宇间隱隱透著点欲求不满的鬱闷。他冲杨坚扬了扬下巴:“bro,有时间聊会儿吗?我记得你昨晚说你就住隔壁,希望没打扰到你工作。”
杨坚在心里翻了个白眼。打扰个屁,反正在把那个该死的漏洞提交上去换成赏金之前,这破活儿根本没薪水。
“没事,进来吧。”杨坚侧开身子让出一条道,上下打量了他一眼,嘴角勾起一抹戏謔,“不过看你这表情……昨晚似乎不太顺利?你知道的,咱们这房子的隔音效果简直像纸糊的,我昨晚刚睡著,就被外面的警车动静吵醒了,紧接著就听见有人在隔壁客厅里疯狂呕吐。”
史蒂夫苦笑著捂住了脸,发出一声极度无奈的嘆息:“別提了,老兄。我发誓我差一点点就全垒打了!结果门一开,一个穿制服的警察把一个吐得满身都是的酒鬼直接扔在了地板上!”
“这就是南区的日常,比过山车还刺激。那个酒鬼就是他们的老爹,弗兰克。”杨坚耸了耸肩,有些好笑地看著他,“所以,你今天大中午特意跑回来,总不会是来找我做心理疏导的吧?”
“我是来取经的。”史蒂夫摊了摊手,“我对菲欧娜很感兴趣。我走之前虽然给她留了联繫方式,但我觉得我迫切需要一份『加拉格家生存与追求指南』。如果你愿意……”
史蒂夫的话还没说完,两人的对话突然被一个极其不合时宜的声音生生掐断。
杨坚的肚子里传出一声极其响亮、甚至带点回音的轰鸣。
气氛停滯了一秒。
史蒂夫愣了一下,目光越过杨坚的肩膀,扫了一眼这间除了床和桌子外,几乎空空如也、连只蟑螂来了都得饿著肚子走的老旧公寓。他瞬间明白了什么,笑著改了口:“既然没打扰你,那不如去外面吃一顿?边吃边聊,就当是我报答你昨晚在俱乐部的帮忙了。”
“那是说啥,走唄!”
杨坚把南区“有便宜不占王八蛋”的生存哲学贯彻得相当彻底。面对这顿从天而降的大餐,他连半秒钟的假客套都懒得装,乾脆利落地抓起钥匙,理直气壮地跟著史蒂夫坐进了那辆银灰色的宝马。
史蒂夫找了一家距离街区不远、门脸看起来还算过得去的美式餐馆。
两人落座后,史蒂夫直接招呼服务员,点了一大桌高碳水高脂肪的丰盛大餐。
表面烤出漂亮美拉德焦痕的五分熟厚切肉眼牛排,刀锋顺著焦脆的表层切开,丰沛的粉色肉汁瞬间顺著漂亮的纹理渗了出来;一大盘煎得边缘微微捲曲、还泛著诱人油光的焦脆培根;两颗臥在烤吐司上、用叉子尖轻轻一戳就流出金黄浓郁蛋液的太阳煎蛋;还有刚出炉的、格子间蓄满了融化黄油和琥珀色枫糖浆的鬆软华夫饼,外加一整篮裹满了浓郁甜辣酱汁、正冒著热气的烤鸡翅。
浓烈的肉香、油脂的焦香和枫糖独有的甜腻瞬间交织在一起,霸道地钻进鼻腔。
杨坚压根不知道客气两个字怎么写,拿起刀叉就开始了风捲残云般的扫荡。
他切下一大块饱含汁水的厚切牛肉,熟练地在盘底金黄的蛋液里滚了一圈塞进嘴里,接著又塞进一片嘎嘣脆的培根。这种久违的、纯粹由动物脂肪和优质蛋白带来的极致满足感,在口腔里瞬间炸开,让他浑身的每一个细胞都舒服得快要嘆息出声。他大口咀嚼著,连鸡翅的骨头都恨不得嗦乾净,狠狠地给这具长期清汤寡水的身体灌注著救命的热量。
看著杨坚这副给咬肌和胃袋上强度的样子,史蒂夫靠在椅背上抿了一口咖啡,这才慢条斯理地把话题引向了他最关心的隔壁一家子。
“所以,可以跟我说说菲欧娜的家人了吧,比如那个鼻子跟希腊雕塑似的死鱼眼男孩?”
杨坚咽下一口牛排,毫不犹豫地吐槽:“利普?一个浪费了自己天才大脑,把智商全用在坑蒙拐骗和跟疯女孩鬼混上的混蛋。”
史蒂夫被逗笑了,继续问:“那红髮的伊恩呢?”
“加拉格家纪律性最强的准大兵。”杨坚切著手里的肉,头也没抬,“每天除了在便利店打工就是做体能训练,满脑子只有西点军校,自律得简直不像是弗兰克亲生的。”
“黛比和卡尔?”
“黛比有著跟这片贫民窟格格不入的善良,是这个家里唯一还会管弗兰剋死活的人。”杨坚顿了顿,用叉子指了指史蒂夫,“至於卡尔……一个把破坏当成艺术的破坏狂。听我一句劝,为了你的人身安全,绝对不要让他靠近微波炉、打火机,以及双截棍之类的武器”
史蒂夫听得津津有味,最后问道:“那他们的老爹,弗兰克呢?”
杨坚放下刀叉,给出了一句总结:“一个会喘气的生化武器,一个满嘴歪理邪说的顶级寄生虫。为了换两瓶劣质威士忌,他能毫不犹豫地把自己按斤卖了,完事了还要给你上一堂反资本主义的哲学课。”
这句吐槽让史蒂夫直接笑出了声。他发现面前这个年轻人不仅说话一针见血,而且有一种跟南区环境不太相符的鬆弛感。
笑过之后,史蒂夫放下咖啡杯,身体微微前倾,带著点探究的意味看向杨坚:“说真的,杨。你这人有点意思。我开著崭新的宝马,隨手请你吃大餐,换作南区其他人,不是旁敲侧击地想套我的底细,就是已经在琢磨怎么撬我的车標了。你居然连一句『你的钱是哪来的』都没问过?”
“在南区,多余的好奇心通常死得很惨。”杨坚端起冰水喝了一口,语气平静得像是在谈论天气,“我不关心你是华尔街的精英,还是专门偷豪车的江洋大盗。只要你的买卖不把警察招惹到我门前,不影响我搞钱交房租,那大家就是好齁米。”
说到这,杨坚扯过餐巾纸擦了擦嘴,冲门外那辆宝马努了努下巴,似笑非笑地补了一句:“害,都几把哥们,以后你要是换了辆路虎,记得借我开两圈过过癮就行。”
听到“偷豪车”和“路虎”这两个词,史蒂夫端著咖啡杯的手微不可察地僵了半秒,瞳孔骤然收缩了一下。
这两个词太过精准地戳中了他隱藏的真实行当,那一瞬间,他甚至有种被当街扒了底裤的错觉。但他紧盯著杨坚的眼睛,看到的却只有那种南区混子特有的满不在乎和隨口调侃。
几秒钟后,史蒂夫紧绷的肩膀鬆懈下来,突然放声哈哈大笑起来,举起手里的咖啡杯跟杨坚碰了一下。
“没问题,下次换路虎一定让你先开。”
他把杨坚的话当成了一个瞎猫碰上死耗子的黑色幽默。但他也不得不承认,这个亚裔邻居身上透著股洞穿一切、却又绝不多管閒事的通透感,相处起来极其舒服。
杨坚从裹成一团的旧毯子里伸出一条胳膊,烦躁地用力搓了搓脸,强行把自己从短暂且质量极差的睡眠中拔了出来。
他顶著一头乱髮,光著脚踩在冰凉的油毡地上,晃晃悠悠地走进厨房。
一把拉开那台嗡嗡作响的二手冰箱,里面还算充实。这得归功於昨天跟加拉格一家配合默契的零元购。昨晚虽然造掉了一块牛排,但货架上还稳稳噹噹地躺著那一打盒装鸡蛋,以及旁边堆著的两大袋全麦吐司。半桶快过期的牛奶则被孤零零地挤在角落。
“还好那天手够快……”杨坚嘟囔了一句,把牛奶倒进杯子里塞进微波炉。
隨后点燃老旧的燃气灶,把平底锅架在火上。拿起旁边快见底的烹飪油喷雾,对著锅底“呲呲”喷了两下。等油温一上来,利落地往锅里磕了两个鸡蛋。伴隨著底油发出悦耳的“滋滋”声响,边缘的蛋白迅速泛起一圈焦脆,他紧接著又顺手抽出两片全麦吐司,丟在平底锅边缘借著火候一起烘烤。
虽然没有高级培根,但边缘焦脆的太阳煎蛋配上烤得微热的吐司,再灌下一口热乎乎的牛奶,这顿碳水加蛋白质的组合在这个街区已经算得上是极其奢侈的豪华配置了。
一口咬下夹著热乎煎蛋的吐司,杨坚一边咀嚼,一边忍不住在心里琢磨:隔壁那帮加拉格们,这会儿大概正围著餐桌,为了抢最后一点牛奶泡麦片(frosted flakes)大打出手吧。
那玩意儿也就老美爱吃,玉米片上裹著厚厚一层糖霜,一口下去简直齁甜。他摇了摇头,咽下嘴里的食物暗自吐槽:美国街头上那么多胖子,估计一大半都得归功於这种工业流水线批量生產的廉价高糖早餐。
三两口解决掉盘子里的食物,胃里终於传来了久违的踏实感。但看著冰箱里肉眼可见在减少的存货,杨坚的心里却没有半分轻鬆。
靠运气薅来的羊毛总有吃完的一天,他总不能天天祈祷有蠢蛋送货司机把卡车停在门口吧?在这个烂泥潭一样的南区,要想真正活得像个人,解决长久的伙食和温饱问题,甚至摆脱隨时会被扫地出门的窘境,唯一的出路就是多搞钱。
怀揣著对赚刀乐的极度急迫与渴望,杨坚擦了擦嘴,转身坐到了那张有些摇晃的书桌前,打开电脑,將全部精力投入到了昨天未完成的测试环境搭建中。
杨坚就这么聚精会神地盯著屏幕敲击键盘,一晃眼就到了中午。
一上午的进展相当不错。在这颱风扇狂转的老旧戴尔上,他总算把那套臃肿的本地开发和测试环境给跑通了。看著指令行终端上如期弹出的那行乾乾净净的“hello world”,杨坚长长地舒了一口气,这意味著最折磨人的配置阶段终於结束,接下来就能放开手脚干正事了。
“呼……地基打好了。”他扭了扭发酸的脖子,手指习惯性地在桌面上敲击著节奏。
下一步才是真正的重头戏——不断尝试復现那个致命的 log4j漏洞。
说白了,这玩意儿的原理就像是欺骗一个极度死板、且有大声朗读强迫症的门卫。他不需要费劲去撬锁,只需要在输入框里填进一段精心构造的暗號。当负责记录的日誌系统(门卫)老老实实地把这段话读出来准备存档时,暗號就会被激活,直接从內部把系统的后门敞开。
只要能在终端里成功骗过这个门卫,让测试伺服器乖乖执行他发出的外部指令,这笔丰厚的漏洞赏金就算是稳妥地揣进兜里一半了。
正当他搓了搓手,准备开始编写脚本,批量往里塞暗號测试时。
“咚咚咚。”
门外突然响起了敲门声。
杨坚起身拉开那扇单薄的木门,有些意外地挑了挑眉。站在门外的,竟然是昨晚刚在隔壁度过了一个美好夜晚的大姐夫史蒂夫。
史蒂夫今天换了一身乾净的休閒装,看起来神清气爽,但眉宇间隱隱透著点欲求不满的鬱闷。他冲杨坚扬了扬下巴:“bro,有时间聊会儿吗?我记得你昨晚说你就住隔壁,希望没打扰到你工作。”
杨坚在心里翻了个白眼。打扰个屁,反正在把那个该死的漏洞提交上去换成赏金之前,这破活儿根本没薪水。
“没事,进来吧。”杨坚侧开身子让出一条道,上下打量了他一眼,嘴角勾起一抹戏謔,“不过看你这表情……昨晚似乎不太顺利?你知道的,咱们这房子的隔音效果简直像纸糊的,我昨晚刚睡著,就被外面的警车动静吵醒了,紧接著就听见有人在隔壁客厅里疯狂呕吐。”
史蒂夫苦笑著捂住了脸,发出一声极度无奈的嘆息:“別提了,老兄。我发誓我差一点点就全垒打了!结果门一开,一个穿制服的警察把一个吐得满身都是的酒鬼直接扔在了地板上!”
“这就是南区的日常,比过山车还刺激。那个酒鬼就是他们的老爹,弗兰克。”杨坚耸了耸肩,有些好笑地看著他,“所以,你今天大中午特意跑回来,总不会是来找我做心理疏导的吧?”
“我是来取经的。”史蒂夫摊了摊手,“我对菲欧娜很感兴趣。我走之前虽然给她留了联繫方式,但我觉得我迫切需要一份『加拉格家生存与追求指南』。如果你愿意……”
史蒂夫的话还没说完,两人的对话突然被一个极其不合时宜的声音生生掐断。
杨坚的肚子里传出一声极其响亮、甚至带点回音的轰鸣。
气氛停滯了一秒。
史蒂夫愣了一下,目光越过杨坚的肩膀,扫了一眼这间除了床和桌子外,几乎空空如也、连只蟑螂来了都得饿著肚子走的老旧公寓。他瞬间明白了什么,笑著改了口:“既然没打扰你,那不如去外面吃一顿?边吃边聊,就当是我报答你昨晚在俱乐部的帮忙了。”
“那是说啥,走唄!”
杨坚把南区“有便宜不占王八蛋”的生存哲学贯彻得相当彻底。面对这顿从天而降的大餐,他连半秒钟的假客套都懒得装,乾脆利落地抓起钥匙,理直气壮地跟著史蒂夫坐进了那辆银灰色的宝马。
史蒂夫找了一家距离街区不远、门脸看起来还算过得去的美式餐馆。
两人落座后,史蒂夫直接招呼服务员,点了一大桌高碳水高脂肪的丰盛大餐。
表面烤出漂亮美拉德焦痕的五分熟厚切肉眼牛排,刀锋顺著焦脆的表层切开,丰沛的粉色肉汁瞬间顺著漂亮的纹理渗了出来;一大盘煎得边缘微微捲曲、还泛著诱人油光的焦脆培根;两颗臥在烤吐司上、用叉子尖轻轻一戳就流出金黄浓郁蛋液的太阳煎蛋;还有刚出炉的、格子间蓄满了融化黄油和琥珀色枫糖浆的鬆软华夫饼,外加一整篮裹满了浓郁甜辣酱汁、正冒著热气的烤鸡翅。
浓烈的肉香、油脂的焦香和枫糖独有的甜腻瞬间交织在一起,霸道地钻进鼻腔。
杨坚压根不知道客气两个字怎么写,拿起刀叉就开始了风捲残云般的扫荡。
他切下一大块饱含汁水的厚切牛肉,熟练地在盘底金黄的蛋液里滚了一圈塞进嘴里,接著又塞进一片嘎嘣脆的培根。这种久违的、纯粹由动物脂肪和优质蛋白带来的极致满足感,在口腔里瞬间炸开,让他浑身的每一个细胞都舒服得快要嘆息出声。他大口咀嚼著,连鸡翅的骨头都恨不得嗦乾净,狠狠地给这具长期清汤寡水的身体灌注著救命的热量。
看著杨坚这副给咬肌和胃袋上强度的样子,史蒂夫靠在椅背上抿了一口咖啡,这才慢条斯理地把话题引向了他最关心的隔壁一家子。
“所以,可以跟我说说菲欧娜的家人了吧,比如那个鼻子跟希腊雕塑似的死鱼眼男孩?”
杨坚咽下一口牛排,毫不犹豫地吐槽:“利普?一个浪费了自己天才大脑,把智商全用在坑蒙拐骗和跟疯女孩鬼混上的混蛋。”
史蒂夫被逗笑了,继续问:“那红髮的伊恩呢?”
“加拉格家纪律性最强的准大兵。”杨坚切著手里的肉,头也没抬,“每天除了在便利店打工就是做体能训练,满脑子只有西点军校,自律得简直不像是弗兰克亲生的。”
“黛比和卡尔?”
“黛比有著跟这片贫民窟格格不入的善良,是这个家里唯一还会管弗兰剋死活的人。”杨坚顿了顿,用叉子指了指史蒂夫,“至於卡尔……一个把破坏当成艺术的破坏狂。听我一句劝,为了你的人身安全,绝对不要让他靠近微波炉、打火机,以及双截棍之类的武器”
史蒂夫听得津津有味,最后问道:“那他们的老爹,弗兰克呢?”
杨坚放下刀叉,给出了一句总结:“一个会喘气的生化武器,一个满嘴歪理邪说的顶级寄生虫。为了换两瓶劣质威士忌,他能毫不犹豫地把自己按斤卖了,完事了还要给你上一堂反资本主义的哲学课。”
这句吐槽让史蒂夫直接笑出了声。他发现面前这个年轻人不仅说话一针见血,而且有一种跟南区环境不太相符的鬆弛感。
笑过之后,史蒂夫放下咖啡杯,身体微微前倾,带著点探究的意味看向杨坚:“说真的,杨。你这人有点意思。我开著崭新的宝马,隨手请你吃大餐,换作南区其他人,不是旁敲侧击地想套我的底细,就是已经在琢磨怎么撬我的车標了。你居然连一句『你的钱是哪来的』都没问过?”
“在南区,多余的好奇心通常死得很惨。”杨坚端起冰水喝了一口,语气平静得像是在谈论天气,“我不关心你是华尔街的精英,还是专门偷豪车的江洋大盗。只要你的买卖不把警察招惹到我门前,不影响我搞钱交房租,那大家就是好齁米。”
说到这,杨坚扯过餐巾纸擦了擦嘴,冲门外那辆宝马努了努下巴,似笑非笑地补了一句:“害,都几把哥们,以后你要是换了辆路虎,记得借我开两圈过过癮就行。”
听到“偷豪车”和“路虎”这两个词,史蒂夫端著咖啡杯的手微不可察地僵了半秒,瞳孔骤然收缩了一下。
这两个词太过精准地戳中了他隱藏的真实行当,那一瞬间,他甚至有种被当街扒了底裤的错觉。但他紧盯著杨坚的眼睛,看到的却只有那种南区混子特有的满不在乎和隨口调侃。
几秒钟后,史蒂夫紧绷的肩膀鬆懈下来,突然放声哈哈大笑起来,举起手里的咖啡杯跟杨坚碰了一下。
“没问题,下次换路虎一定让你先开。”
他把杨坚的话当成了一个瞎猫碰上死耗子的黑色幽默。但他也不得不承认,这个亚裔邻居身上透著股洞穿一切、却又绝不多管閒事的通透感,相处起来极其舒服。