【RFC-048】注册页面加入“工作量证明”机制
变更内容:在注册账号的页面加入“工作量证明”机制,提高注册成本
变更理由:最近有极个别人使用脚本自动注册大量账号,注册以后也不发表任何有意义内容,短时间内恶意关注大量用户,辱骂他人。现有的验证码机制容易被滥用,可以直接用脚本填写其他内容,然后人工批量填写验证码,可以短时间内注册大量账号。
安全性考量:毫无影响。实现此功能无需知道用户的IP地址,User-Agent等。
浏览器兼容性考量:本站的TLS配置(强制SNI,只有ECDSA证书)已经过滤掉了大量旧版浏览器
讨论时间:截至2019年5月15日0时0分(UTC+8)
变更步骤:(选一个,说不定可以淘汰验证码机制)
变更理由:最近有极个别人使用脚本自动注册大量账号,注册以后也不发表任何有意义内容,短时间内恶意关注大量用户,辱骂他人。现有的验证码机制容易被滥用,可以直接用脚本填写其他内容,然后人工批量填写验证码,可以短时间内注册大量账号。
安全性考量:毫无影响。实现此功能无需知道用户的IP地址,User-Agent等。
浏览器兼容性考量:本站的TLS配置(强制SNI,只有ECDSA证书)已经过滤掉了大量旧版浏览器
讨论时间:截至2019年5月15日0时0分(UTC+8)
变更步骤:(选一个,说不定可以淘汰验证码机制)
给注册页面加上一个按钮,鼠标点住30秒(暂定)不放才能通过验证(不可行,可以抓包绕过)注册页面“挖矿”,不挖加密货币,CPU做满一定量的工作才能注册,切换到其他Tab或窗口时停止“挖矿”(歧视低配CPU电脑和移动设备)- 在指定区域内摇动鼠标,积累满一定的熵才能注册
- 注册页面放一个简单的小游戏,通关后才能注册
- 大家集思广益,想一些点子,不损失匿名性又能反垃圾
110 个评论
目前的驗證圖片方式,不能過濾機器自動註冊?
應該被限制機器不是人吧
應該被限制機器不是人吧
https://pincong.rocks/people/page-79
上百個支那人xxx,驗證圖片過濾被破解?
上百個支那人xxx,驗證圖片過濾被破解?
想法不错,但服务端如何实现呢?
反对部署基于消耗时间或计算量的验证,除非该网站成为营利性网站。
等待30秒,这是商业网盘对非付费下载者采取的做法。
挖坑,自己去看看“在网页中植入‘挖坑’脚本”是怎么被人评价的。
基于用户行为的验证可以考虑,前提是不能基于消耗时间或计算量。
但应当慎用,google的reCAPTCHA就是前车之鉴。
如果为了抑制恶意注册而一味增加注册者的注册成本,而注册者会权衡成本和收益,那么结果就是只有能通过注册获得利益的注册者才会来注册,而这些人是干什么的,大家早就一清二楚。
等待30秒,这是商业网盘对非付费下载者采取的做法。
挖坑,自己去看看“在网页中植入‘挖坑’脚本”是怎么被人评价的。
基于用户行为的验证可以考虑,前提是不能基于消耗时间或计算量。
但应当慎用,google的reCAPTCHA就是前车之鉴。
如果为了抑制恶意注册而一味增加注册者的注册成本,而注册者会权衡成本和收益,那么结果就是只有能通过注册获得利益的注册者才会来注册,而这些人是干什么的,大家早就一清二楚。
反對。
現行所有的驗證機制都有共同目的,就是僅少量增加用戶成本,而最大化大量註冊者的成本,且這也要考慮到邊際效應。
如果覺得文字辨識的成本太低,大可連設幾組,可是這樣也會直接把正常用戶擋在門外。
用戶會考量成本,大量刷號者會考量成本,改代碼的站方自然也會。
我覺得這成本太高了。
現行所有的驗證機制都有共同目的,就是僅少量增加用戶成本,而最大化大量註冊者的成本,且這也要考慮到邊際效應。
如果覺得文字辨識的成本太低,大可連設幾組,可是這樣也會直接把正常用戶擋在門外。
用戶會考量成本,大量刷號者會考量成本,改代碼的站方自然也會。
我覺得這成本太高了。
不要考虑浏览器的行为。
程序必然是没有界面,直接向服务端发送若干个HTTP请求。
感觉你目前的思路是如何限制人类,但实际上需要做的是如何限制机器人。
服务端要知道客户端是人类而不是机器人,要进行一个简单的图灵测试(参见CAPTCHA的全称)。
程序必然是没有界面,直接向服务端发送若干个HTTP请求。
感觉你目前的思路是如何限制人类,但实际上需要做的是如何限制机器人。
服务端要知道客户端是人类而不是机器人,要进行一个简单的图灵测试(参见CAPTCHA的全称)。
没有意义,因为可以用脚本发一个包然后等待之后再发一个,无法判断是否真的点了,还是用脚本模拟的,除非记录所有鼠标轨迹作为学习样本,然后用一些机器学习算法判断是不是真的用户点击,还是机器模拟。谷歌的二代验证码就是这个原因,点一下就可以验证是机器还是真人。
1:别人网页里放了广告的,访问者爱看不看,也没那么难吧?那为什么这个世界上存在adblock这个东西?
2:网站剥夺了访问者的这30秒,打算拿什么来反馈给访问者?一句虚无缥缈的“这里没有五毛”么?
3:有句话叫做“防君子不防小人”,形容的就是这个。
2:网站剥夺了访问者的这30秒,打算拿什么来反馈给访问者?一句虚无缥缈的“这里没有五毛”么?
3:有句话叫做“防君子不防小人”,形容的就是这个。
那这个就没有任何意义,因为完全可以机器模拟,我只需要多线程(线程数为n),每个线程获取一个Cookies,发一个包等30秒再发一个包,就可以30秒注册n个小号。在下一个30秒内我只需要输入这些验证码,就可以无间断注册。
实在不行就Google验证码
我去,Google?这公司收集了多少数据?而且对VPN和Tor验证码难度都是变态级的
不开放里区的方法也有,就是新注册用户隔离制度。仍可随意注册账号,但提供两个View,即新注册用户区和正常用户区。默认是正常用户区,也就是仅显示正常用户的发言,新注册用户发言仅在新注册用户区显示,注册后用户可以切换View,来选择是否观看新注册用户发言。被正常用户赞的回答和问题会在正常用户区显示。
新注册用户变成正常用户的方法有三种,一是威望达到一定程度,但需要老用户随时查看新用户区来把回答和问题顶上来,二是转正申请,由五十名管理者审核通过,三是通过邀请码,正常用户邀请注册则直接转正。
新注册用户变成正常用户的方法有三种,一是威望达到一定程度,但需要老用户随时查看新用户区来把回答和问题顶上来,二是转正申请,由五十名管理者审核通过,三是通过邀请码,正常用户邀请注册则直接转正。
說的沒錯,所以我不喜歡任何形式的限制發言當下,因為我相信所有言論可以透過演算法來呈現用戶喜歡的頁面,例如自動摺疊。
另外說點私人的,我覺得你被特定人士盯上了,所以想要把那時間很多的傢伙消滅。
或許你們私下有恩怨吧,連用戶介紹都要罵人。
可是,同樣身為管理員和積極用戶,我怎麼沒被盯上?
有人的時間很廉價,難道你的時間也很多嗎?
想改善用戶體驗的心態,我很支持,可是我覺得題主有點情緒化了。
我不太在乎大量灌水,頂多覺得每天的首頁變化很快,可是現行的登入驗證碼已經讓我覺得困擾了,我希望有更智能的驗證方式。
另外說點私人的,我覺得你被特定人士盯上了,所以想要把那時間很多的傢伙消滅。
或許你們私下有恩怨吧,連用戶介紹都要罵人。
可是,同樣身為管理員和積極用戶,我怎麼沒被盯上?
有人的時間很廉價,難道你的時間也很多嗎?
想改善用戶體驗的心態,我很支持,可是我覺得題主有點情緒化了。
我不太在乎大量灌水,頂多覺得每天的首頁變化很快,可是現行的登入驗證碼已經讓我覺得困擾了,我希望有更智能的驗證方式。
难道区块链要崛起?因为发帖要钱,大家只发特别重要的内容,自然没有垃圾。但是放在现在,谁会交钱发帖?而且还暴露身份
注册时可以选择填写转正理由,也可以选择不填写,通过提升威望的方式转正。此方法不会影响正常讨论的用户,因为正常用户一般会填写合理的转正理由,大滥权时代会很快得到处理。
此外,此方法仍可保证小号匿名性,注册小号发言的只要有一个大号帮忙把小号发言顶到正常区即可,但明显增加捣乱成本,因为捣乱者必须有一个大号把他小号的发言顶上来,管理员看一下谁顶了这些垃圾发言就可以一瞬封禁,捣乱者就需要重新养点赞大号,成本明显增加。
此外,此方法仍可保证小号匿名性,注册小号发言的只要有一个大号帮忙把小号发言顶到正常区即可,但明显增加捣乱成本,因为捣乱者必须有一个大号把他小号的发言顶上来,管理员看一下谁顶了这些垃圾发言就可以一瞬封禁,捣乱者就需要重新养点赞大号,成本明显增加。
你可以尝试把他的@baiyubrother 封了,因为这个号在https://www.pincong.rocks/question/3311问题评论下瞎骂,看看你封完之后会不会被骂
现状是用户注册需要提供一个用户名,输入并重复输入密码,输入图形验证码。
这个现状,维基百科自2001年维持到今天,人走光了?
新品葱的问题在于早期(至今)都没有一个明确的、正式的行为规范,一切都依赖“管理员”和“大多数”的现场判断。这都是人治。人治下的群体,集体平权就是乱斗,自上而下就是极权,这样的群体如果不限制成员离开(剥夺自由迁徙权甚至监禁、奴役),结果就是人以类聚物以群分。而采用复杂验证机制,在防小人之前肯定先防君子,那么最终这个群体势必发展成乌合之众。
所以才有“宪政”。
这个现状,维基百科自2001年维持到今天,人走光了?
新品葱的问题在于早期(至今)都没有一个明确的、正式的行为规范,一切都依赖“管理员”和“大多数”的现场判断。这都是人治。人治下的群体,集体平权就是乱斗,自上而下就是极权,这样的群体如果不限制成员离开(剥夺自由迁徙权甚至监禁、奴役),结果就是人以类聚物以群分。而采用复杂验证机制,在防小人之前肯定先防君子,那么最终这个群体势必发展成乌合之众。
所以才有“宪政”。
看来你也知道看如何非评论匿名的bug了,有空可以一起修了,我只是觉得瞎骂对于骚乱论坛的效果比你迫真五毛效果好而已,我可没求你做什么事,想骂就骂没人拦你。要说唯一求的,就是继续捣乱,帮助新品葱发现更多bug。
我知道小鈣前輩之前的遭遇,大概是一周前了,更早好像是薄熙來的樣子。
我的文章曾經被支字頭大軍貼過支字形的支,我把它當作文字藝術,結果他後來被踩到摺疊了,我想這是我沒有被攻擊的原因。
舉一個我欣賞的用戶鹿兒前輩,她的文章底下幾乎也沒有搗亂的,我相信這源自於它的一笑置之和文章內容,據我所知鹿姐也沒有因為有人搗亂而封過它的號。
我不是說不該處理搗亂者,而是我認為有些行為根本沒什麼,就讓它發生也行,封了還要花自己時間。
另外,本站確實有真-五毛,帶風向的那種,這危害比支字頭大很多,我一度想使用封禁功能,但後來還是相信群眾的力量,讓它們逐漸沉默了。
我的文章曾經被支字頭大軍貼過支字形的支,我把它當作文字藝術,結果他後來被踩到摺疊了,我想這是我沒有被攻擊的原因。
舉一個我欣賞的用戶鹿兒前輩,她的文章底下幾乎也沒有搗亂的,我相信這源自於它的一笑置之和文章內容,據我所知鹿姐也沒有因為有人搗亂而封過它的號。
我不是說不該處理搗亂者,而是我認為有些行為根本沒什麼,就讓它發生也行,封了還要花自己時間。
另外,本站確實有真-五毛,帶風向的那種,這危害比支字頭大很多,我一度想使用封禁功能,但後來還是相信群眾的力量,讓它們逐漸沉默了。
你说的真五毛和支字应该是一个人,因为那些言论是从知乎复制来的。他一波瞎骂之后会找一些关键词复制粘贴五毛言论,以此搅浑水。真正的五毛应该会做一些原创文字,而不是在其他地方复制粘贴,这明显就还是来捣乱的。
现状是用户注册需要提供一个用户名,输入并重复输入密码,输入图形验证码
维基百科要是不封禁捣乱者的IP,不都走光了?现在维基百科不仅记录IP,还禁止Tor和大多数VPN、代理用户。品葱做不到吧
唯一能做的就是观察新注册用户,否则仅凭一人就可以真正做到橄榄品葱。我甚至都可以提供一个迫真五毛橄榄方案:
由于目前验证码难度极低,使用谷歌OCR API即可识别(亲测,部分需要用contour segmentation),谷歌API每月1000次免费试用,1000次使用完毕之后获得训练样本,拿一个pretrained character recognition CNN训练这1000个样本,直接写出自己的自动识别验证码。
之后,爬虫知乎关于中国和爱国标签的问题和回答,自动用注册的小号评论得葱,然后提问五毛问题,小号自动粘贴五毛回答,还可以采取一些language style similarity clustering的方法把知乎和品葱相似的问题复制知乎的五毛言论来回答,整个论坛在一天之内就可以变成知乎复刻,由于全自动,封是永远封不完的。
由于目前验证码难度极低,使用谷歌OCR API即可识别(亲测,部分需要用contour segmentation),谷歌API每月1000次免费试用,1000次使用完毕之后获得训练样本,拿一个pretrained character recognition CNN训练这1000个样本,直接写出自己的自动识别验证码。
之后,爬虫知乎关于中国和爱国标签的问题和回答,自动用注册的小号评论得葱,然后提问五毛问题,小号自动粘贴五毛回答,还可以采取一些language style similarity clustering的方法把知乎和品葱相似的问题复制知乎的五毛言论来回答,整个论坛在一天之内就可以变成知乎复刻,由于全自动,封是永远封不完的。
再說兩句。
提供一個類似想法,如果使用python,也可以直接本地訓練。 參考 https://blog.csdn.net/Neleuska/article/details/80040304
現在沒有人這麼幹,是因為本站不值得,因此我認為刷號者只是出於報復或好玩心態,而不是真的想要拿下本站。
提供一個類似想法,如果使用python,也可以直接本地訓練。 參考 https://blog.csdn.net/Neleuska/article/details/80040304
現在沒有人這麼幹,是因為本站不值得,因此我認為刷號者只是出於報復或好玩心態,而不是真的想要拿下本站。
比如楼上这种发了一瞬削除就是利用回复就得葱即使删除的bug,由于你不知道他到底发了什么,很难通过用户踪迹去查看,也没有正当理由封禁。多攒些这种号到某个时刻一起发问题文章捣乱。
现在bug我基本都清楚了,不过都没有时间修复,时间都拿来黑屁了,,,
现在bug我基本都清楚了,不过都没有时间修复,时间都拿来黑屁了,,,
这个识别就是我说的,只不过我说样本来源是谷歌OCR,而它默认你已经有了一万样本。
这个人应该就是为了取乐而不是真正橄榄,或技术力不足以橄榄,但捣乱手法提供了这套系统的一些bug,还是值得称赞的。
这个人应该就是为了取乐而不是真正橄榄,或技术力不足以橄榄,但捣乱手法提供了这套系统的一些bug,还是值得称赞的。
之前可以,今天应该是刚改了,不知道是哪个后台管理员改的,至少现在回答仍然可以。
就是因为现在这套系统写的太烂所以没有人pull,也没人愿意重写,就这么放着了。
就是因为现在这套系统写的太烂所以没有人pull,也没人愿意重写,就这么放着了。
又是一个bug,空白头像。品葱bug好多
封號不至於害了本站,但會延緩本站的自癒能力。舊品蔥有黃正宇之流,現有複製大軍,這些就像疫苗一樣,短期是種破壞,但長期可以協助本站抵禦更強的攻擊。
例如前幾天的502錯誤,如果是攻擊行為的話,很顯然比刷小號強了很多。
例如前幾天的502錯誤,如果是攻擊行為的話,很顯然比刷小號強了很多。
我局的应该是某个在你国时间夜间活动的程序员大手(时区不明,作息正常应该是澳洲时间?),义务找漏洞。不过封号应该算是找漏洞的一环,因为需要模拟真实的捣乱环境。比如封了之后会重新注册,因此会寻找注册漏洞,如果不封就不会往这个方向找,因为没有必要,不过目前没有看到有什么注册漏洞。
话说,没赶上好时候啊,我这条RFC那么多人回复,要是能加葱就好了
如果是真的,说明服务端响应实在过于垃圾,膜乎没有问题恰恰也说明了这个问题。我寻思应该是设置的cache太少,不知道用的是哪个服务端(当然也有可能是sql查询资源太高),连cloudflare都放过的登录请求就能502实在是过于草生,,,
不过CF都放过的请求可以CC说明服务端请求本身就有问题,无论是请求的什么页面,压力测试都是完全过不了关的。log应该是公布不了,因为服务器端口仅开放了443,没有其他方法访问服务器,除非临时修改防火墙规则,但太麻烦,我觉得万不得已应该没人会做
1:维基百科的ip tracker是为了贯彻行为规范,而新品葱连这样的行为规范都没有;
2:ip tracker是一种很有效的区分非正常活动的手段,但应该不是唯一的,维基百科选择了这种手段,新品葱可以选择其他手段,当然前提是有行为规范;
3:基于消耗时间或计算量的验证区分的是受试者是否愿意付出时间或计算量,而不是非正常活动,过于复杂的验证机制也是同理。
2:ip tracker是一种很有效的区分非正常活动的手段,但应该不是唯一的,维基百科选择了这种手段,新品葱可以选择其他手段,当然前提是有行为规范;
3:基于消耗时间或计算量的验证区分的是受试者是否愿意付出时间或计算量,而不是非正常活动,过于复杂的验证机制也是同理。
理論上是對的,可是實際上本站沒這麼大價值,出現支字小號已經算很稀罕了。
如果真的有人願意用零時漏洞來打本站server,就不只是502的問題了,搞不好續膜乎也得掛。
如果真的有人願意用零時漏洞來打本站server,就不只是502的問題了,搞不好續膜乎也得掛。
回楼上,美国时间夜间 = 澳洲时间白天,和定时活动的时间也很吻合,假如他在美国或欧洲,只能是熬夜CC了
@币圈奇葩8964 你知道zhina.red的挖币验证码是什么原理吗?
应该是嵌入一个widget
估计还要改一下,要不然Tor浏览器下用不了
估计还要改一下,要不然Tor浏览器下用不了
assets/js/jquery.hashcash.io.min.js
$("#comment_submit").hashcash({key: "12345678-1234-4321-0000-123456789abc"})
然后到hashcash上注册账号?
$("#comment_submit").hashcash({key: "12345678-1234-4321-0000-123456789abc"})
然后到hashcash上注册账号?
请参考https://hashcash.io/
全部都要自己写的话,很困难
全部都要自己写的话,很困难
如果能保证图形验证码不被人工智能识别的话,限制主楼所说的批量自动注册可以用以下逻辑:
1.输入用户名、密码和确认密码、当前表示的验证码后点“开始注册”,此时开始计时(随机30~60秒,页面上不显示剩余时间),按钮无效化,同时页面上需要显示醒目提示让用户记下当前验证码
2.等待时间结束后跳转画面,显示新的验证码和“确认注册”按钮,此时开始倒计时(30秒),用户在倒计时结束前输入“初次验证码+新验证码“并点击“确认注册”按钮则注册成功,否则注册失败,清除会话数据并回到初始画面
1.输入用户名、密码和确认密码、当前表示的验证码后点“开始注册”,此时开始计时(随机30~60秒,页面上不显示剩余时间),按钮无效化,同时页面上需要显示醒目提示让用户记下当前验证码
2.等待时间结束后跳转画面,显示新的验证码和“确认注册”按钮,此时开始倒计时(30秒),用户在倒计时结束前输入“初次验证码+新验证码“并点击“确认注册”按钮则注册成功,否则注册失败,清除会话数据并回到初始画面
1. IP限制,同IP某固定时间限制
2. Java 个人签名认证(WebRTC etc),一个签名只能注册一个账号
3. Shockwave Flash cookie,一个 cookie 只能注册一个账号
4. html5 调用 Javascript 调用 C# dll,之后即可读取主机辨识信息,包括MAC
2-4 可以穿透 VPN、隐身浏览器、DNS
2. Java 个人签名认证(WebRTC etc),一个签名只能注册一个账号
3. Shockwave Flash cookie,一个 cookie 只能注册一个账号
4. html5 调用 Javascript 调用 C# dll,之后即可读取主机辨识信息,包括MAC
2-4 可以穿透 VPN、隐身浏览器、DNS
1对VPN、SSR和TOR用户不友好
2-4并不能防止技术破解,cookie、签名、主机识别信息都可以软件批量制造,攻击的初期成本提高一点而已,甚至可以说是仅限制普通用户,反而对官方小号友好的方案
1、3、4有隐私泄露风险
2-4并不能防止技术破解,cookie、签名、主机识别信息都可以软件批量制造,攻击的初期成本提高一点而已,甚至可以说是仅限制普通用户,反而对官方小号友好的方案
1、3、4有隐私泄露风险
> 在指定区域内摇动鼠标,积累满一定的熵才能注册
泛化指纹即减熵, 故此条有碍匿名
> 注册页面“挖矿”,不挖加密货币,CPU做满一定量的工作才能注册,切换到其他Tab或窗口时停止“挖矿”(歧视低配CPU电脑和移动设备)
把控好数量级即可
泛化指纹即减熵, 故此条有碍匿名
> 注册页面“挖矿”,不挖加密货币,CPU做满一定量的工作才能注册,切换到其他Tab或窗口时停止“挖矿”(歧视低配CPU电脑和移动设备)
把控好数量级即可