SlideShare a Scribd company logo
1 of 24
Download to read offline
今日はxrdpの話ではありません
FreeBSDのpostfixを
blacklistd(8)に対応させてみた
日本xrdpユーザ会
@metalefty
blacklistd?
blacklistd(8)とは
●
blacklist daemon
●
NetBSD 7.0 で導入され
●
FreeBSD 11.0にやってきた
●
類似品
– fail2ban
– denyhosts
– ban4ip
何が違うのか
fail2banの仕組み
fail2banの仕組み
デーモンの書きだすログを解析
認証失敗回数などを数えて
ファイアウォールでブロック
非常に泥臭いが現実的な方法
blacklistdの仕組み
デーモンから認証結果を
blacklistdに通知する
blacklistdが認証失敗を数えて
あとはよろしくやってくれる
すっきりしていて理想的
デーモン側の対応が必要(簡単)
ソースコードの変更が
必要なあたりも理想主義的
NetBSDのpostfixに入った!
https://twitter.com/n_soda/status/958907818668580864
このうれしさ
伝わりますか?
SMTP-AUTHへのブルートフォース攻撃が
ここ数年本当に多い (後述)
小さいパッチらしい!
https://twitter.com/n_soda/status/958910420428795904
FreeBSDに持ってくるしかない!
持ってきた
テストがてら運用してみた
●
3回SMTP-AUTHに失敗したら24hブロック
●
25/tcpへのアクセスが多い
– 日本以外が多い(OP25Bのため)
●
ブロックまでタイムラグがある
– 5秒ごとにポーリングしているため
– 3回以上認証失敗が記録されることがある
– ブロックまでに1700回(!)ログイン試行も
実際のブロックログ
攻撃の傾向
●
25/tcp がほとんど
– 本当にうっとうしい
– 2500回/5秒というペースで試行してくる場合も
●
465/tcp (SMTPS) もそれなりにある
– とはいえ1%ないくらい
– 25/tcpへのアタックが多すぎて比率は霞む
●
587/tcp もなくはない
これからどうなる?
●
まだ手元でパッチを当てただけの野良pkg
●
FreeBSD portsへ取り込んでもらうべく提出済
●
upstreamに入れてもらう性質のものではない
– NetBSDのパッチもupstream入れる前提ではない
– #if defined(__FreeBSD__) とか入れてない
●
FreeBSD portsに取り込んでもらうのがゴール

More Related Content

What's hot

TurtleBot3でROSを始めよう
TurtleBot3でROSを始めようTurtleBot3でROSを始めよう
TurtleBot3でROSを始めようROBOTIS Japan
 
Fluentd+MongoDB+Groovy
Fluentd+MongoDB+GroovyFluentd+MongoDB+Groovy
Fluentd+MongoDB+GroovyDaisuke Ando
 
Trend Micro CTF Asia Pacific & Japan -defensive100-
Trend Micro CTF Asia Pacific & Japan -defensive100-Trend Micro CTF Asia Pacific & Japan -defensive100-
Trend Micro CTF Asia Pacific & Japan -defensive100-boropon
 
[Vitocha.iso] FreeBSDカスタムiso作ってみた
[Vitocha.iso] FreeBSDカスタムiso作ってみた[Vitocha.iso] FreeBSDカスタムiso作ってみた
[Vitocha.iso] FreeBSDカスタムiso作ってみたshutingrz
 
ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆Naoya Nakazawa
 
Casual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXCasual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXTaisuke Yamada
 
Javaな人が今すぐ使えるG*
Javaな人が今すぐ使えるG*Javaな人が今すぐ使えるG*
Javaな人が今すぐ使えるG*irof N
 
10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤTakashi Hoshino
 
仕事で使えるシェルスクリプト
仕事で使えるシェルスクリプト仕事で使えるシェルスクリプト
仕事で使えるシェルスクリプトbsdhack
 
SECCON2014 crypt200
SECCON2014 crypt200SECCON2014 crypt200
SECCON2014 crypt200boropon
 
pbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックスpbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックスTsuyoshi Yamada
 
Tortoise gitで日本語ファイル名を使うときのgitの選択について
Tortoise gitで日本語ファイル名を使うときのgitの選択についてTortoise gitで日本語ファイル名を使うときのgitの選択について
Tortoise gitで日本語ファイル名を使うときのgitの選択についてKiyoshi SATOH
 
TddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in SwiftTddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in SwiftShoichi Matsuda
 
OSC2017Hokkaido
OSC2017HokkaidoOSC2017Hokkaido
OSC2017Hokkaidoslankdev
 
「Dockerはいいぞ」 for Laboratory LT
「Dockerはいいぞ」 for Laboratory LT「Dockerはいいぞ」 for Laboratory LT
「Dockerはいいぞ」 for Laboratory LTShimpeiIwamaru
 
シェル芸初心者によるシェル芸入門
シェル芸初心者によるシェル芸入門シェル芸初心者によるシェル芸入門
シェル芸初心者によるシェル芸入門icchy
 
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームHideki Takase
 
rsyncのちょっとイイ話
rsyncのちょっとイイ話rsyncのちょっとイイ話
rsyncのちょっとイイ話Kazuhiro Oinuma
 
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会ROBOTIS Japan
 

What's hot (20)

TurtleBot3でROSを始めよう
TurtleBot3でROSを始めようTurtleBot3でROSを始めよう
TurtleBot3でROSを始めよう
 
dRuby and Security
dRuby and SecuritydRuby and Security
dRuby and Security
 
Fluentd+MongoDB+Groovy
Fluentd+MongoDB+GroovyFluentd+MongoDB+Groovy
Fluentd+MongoDB+Groovy
 
Trend Micro CTF Asia Pacific & Japan -defensive100-
Trend Micro CTF Asia Pacific & Japan -defensive100-Trend Micro CTF Asia Pacific & Japan -defensive100-
Trend Micro CTF Asia Pacific & Japan -defensive100-
 
[Vitocha.iso] FreeBSDカスタムiso作ってみた
[Vitocha.iso] FreeBSDカスタムiso作ってみた[Vitocha.iso] FreeBSDカスタムiso作ってみた
[Vitocha.iso] FreeBSDカスタムiso作ってみた
 
ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆
 
Casual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXCasual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUX
 
Javaな人が今すぐ使えるG*
Javaな人が今すぐ使えるG*Javaな人が今すぐ使えるG*
Javaな人が今すぐ使えるG*
 
10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ
 
仕事で使えるシェルスクリプト
仕事で使えるシェルスクリプト仕事で使えるシェルスクリプト
仕事で使えるシェルスクリプト
 
SECCON2014 crypt200
SECCON2014 crypt200SECCON2014 crypt200
SECCON2014 crypt200
 
pbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックスpbuilder, cowbuilder, lxcで作るお手軽サンドボックス
pbuilder, cowbuilder, lxcで作るお手軽サンドボックス
 
Tortoise gitで日本語ファイル名を使うときのgitの選択について
Tortoise gitで日本語ファイル名を使うときのgitの選択についてTortoise gitで日本語ファイル名を使うときのgitの選択について
Tortoise gitで日本語ファイル名を使うときのgitの選択について
 
TddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in SwiftTddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in Swift
 
OSC2017Hokkaido
OSC2017HokkaidoOSC2017Hokkaido
OSC2017Hokkaido
 
「Dockerはいいぞ」 for Laboratory LT
「Dockerはいいぞ」 for Laboratory LT「Dockerはいいぞ」 for Laboratory LT
「Dockerはいいぞ」 for Laboratory LT
 
シェル芸初心者によるシェル芸入門
シェル芸初心者によるシェル芸入門シェル芸初心者によるシェル芸入門
シェル芸初心者によるシェル芸入門
 
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
 
rsyncのちょっとイイ話
rsyncのちょっとイイ話rsyncのちょっとイイ話
rsyncのちょっとイイ話
 
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
 

More from Koichiro Iwao

Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Koichiro Iwao
 
Raspberry PiでモバイルVPNルータを作ってみた
Raspberry PiでモバイルVPNルータを作ってみたRaspberry PiでモバイルVPNルータを作ってみた
Raspberry PiでモバイルVPNルータを作ってみたKoichiro Iwao
 
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜Koichiro Iwao
 
ダイソーで売ってるアレをアレしてみた
ダイソーで売ってるアレをアレしてみたダイソーで売ってるアレをアレしてみた
ダイソーで売ってるアレをアレしてみたKoichiro Iwao
 
Route 53 Health CheckでYAMAHAルータの死活監視
Route 53 Health CheckでYAMAHAルータの死活監視Route 53 Health CheckでYAMAHAルータの死活監視
Route 53 Health CheckでYAMAHAルータの死活監視Koichiro Iwao
 

More from Koichiro Iwao (6)

Ruby on FreeBSD 2020
Ruby on FreeBSD 2020Ruby on FreeBSD 2020
Ruby on FreeBSD 2020
 
Raspberry PiでモバイルVPNルータを作ってみた
Raspberry PiでモバイルVPNルータを作ってみたRaspberry PiでモバイルVPNルータを作ってみた
Raspberry PiでモバイルVPNルータを作ってみた
 
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜
FreeBSD と xrdp と私 〜FreeBSD developerになるまで〜
 
ダイソーで売ってるアレをアレしてみた
ダイソーで売ってるアレをアレしてみたダイソーで売ってるアレをアレしてみた
ダイソーで売ってるアレをアレしてみた
 
Route 53 Health CheckでYAMAHAルータの死活監視
Route 53 Health CheckでYAMAHAルータの死活監視Route 53 Health CheckでYAMAHAルータの死活監視
Route 53 Health CheckでYAMAHAルータの死活監視
 
#xrdp_jp
#xrdp_jp#xrdp_jp
#xrdp_jp
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Recently uploaded (9)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

FreeBSDのpostfixをblacklistd(8)に対応させてみた