Installation
npm install -S pentesterland-writeups-scraper
Usage
ES6
const options = year: '2020' // see details belowconst getWriteups = async await const writeups = // do something with writeupsconsole
CommonJS
const load = const options = group: true // see details below
Options
group
-true
orfalse
- returns writeups grouped by year (object
instead ofarray
)
'2020': ... '2019': ... '2018': ... ... '2012': ... unknown: ...
year
-YYYY
- returns list of writeups for specified year. Can beunknown
, to get all writeups without date.month
-MM
- returns list of writeups for specified month (year
option is required)order
-asc
ordesc
- returns list of writeups inasc
ordesc
order
Schema
url: 'https://blog.assetnote.io/bug-bounty/2019/03/19/rce-on-mozilla-zero-day-webpagetest/' domain: 'blog.assetnote.io' title: 'Discovering a zero day and getting code execution on Mozilla’s AWS Network' hackers: name: 'Shubham Shah' twitter_handle: 'infosec_au' name: 'Mathias Karlsson' twitter_handle: 'avlidienbrunn' programs: 'Mozilla' weaknesses: 'RCE' bounty: 500 published: year: '2019' month: '03' day: '19' published_at: '2019-03-19'
In some cases there's a few programs, hackers and weaknesses attached to a single writeup, so i decided to go with array
type for field, to have consistent format across all writeups.
Each writeup may also have additional properties, such as:
status
-informative
,not_applicable
,duplicate
orout_of_scope
swag
-true
orfalse
vdp
-true
orfalse
hall_of_fame
-true
orfalse
hacker
object may also have website
property.